Hello,
when I was converting and validating .pptx-Files into PDFA/1B or PDFA/2U I found following problems in Version 17.11 and 18.3. Every PDF-Document could be generated and could shown by standard PDF-Viewers, but when validating the documents I got several errors.
I’ve used the following Validation-Tools:
- 3-Heights™ PDF Validator Online Tool → PDF Tools Online - Validate PDF
- veraPDF → Home | veraPDF
Testing with OnlineValidator I ever got validation errors for with Aposal generated A/1B-documents, and validation errors for every with Aposal generated A/2U-document with more than 2 pages. Testing with veraPDF I ever got validation errors for A/2U-documents, but A/1B-documents are validated successful.
** Validation-Tool ** -------------------- Input file -------------------------- ** PDFA/1B ** -------------- ** PDFA/2U **
3-Heights Online Validator -------- TestInput_2_Pages.pptx -------------- validation-error ----------- ok
3-Heights Online Validator -------- TestInput_3_Pages.pptx -------------- validation-error ----------- validation-error
veraPDF ----------------------------- TestInput_2_Pages.pptx -------------- ok ----------- validation-error
veraPDF ----------------------------- TestInput_3_Pages.pptx -------------- ok ----------- validation-error
Other PDF-Files could be validated successful with both validation tools. With the knowledge of converting (with asposal) a pptx to PDFA/1B and then converting the PDFA/1B to PDFA/1U I could not understand why the PDFA/1B could be not validated, but the PDFA/2U-document could validate. That’s a issue to be investigated.
Greeting
Michael
Here is my source-code:
using Aspose.Pdf;
using Aspose.Pdf.Devices;
using System;
using System.Diagnostics;
using System.IO;namespace Aspose_PPTX_PDF_Converter
{
class Program
{
static void Convert(string inputPPTX)
{
var pdfA1B = inputPPTX.Replace(“.pptx”,“_A1B.pdf”);
var pdfA2U = inputPPTX.Replace(“.pptx”, “_A2U.pdf”);System.Console.WriteLine("Converting {0} To {1}", inputPPTX, pdfA1B); var presentation = new Aspose.Slides.Presentation(inputPPTX); Aspose.Slides.Export.PdfOptions opt = new Aspose.Slides.Export.PdfOptions(); opt.Compliance = Aspose.Slides.Export.PdfCompliance.PdfA1b; opt.EmbedFullFonts = true; presentation.Save(pdfA1B, Aspose.Slides.Export.SaveFormat.Pdf, opt); System.Console.WriteLine("Converting {0} to {1}", pdfA1B, pdfA2U); var pdfDocA2U = new Aspose.Pdf.Document(pdfA1B); if (pdfDocA2U.Convert(new System.IO.MemoryStream(), Aspose.Pdf.PdfFormat.PDF_A_2U, Aspose.Pdf.ConvertErrorAction.Delete)) pdfDocA2U.Save(pdfA2U); } static void Main(string[] args) { Convert(@"TestInput_2_Pages.pptx"); Convert(@"TestInput_3_Pages.pptx"); } }
}