Unable to convert PDF to valid PDFA

Hello!

pdf_not_convertable.pdf

pdf_not_convertable_groupdocs_result.pdf

We’re unable to convert some files from PDF to a valid PDF/A-1b. We use veraPDF (https://verapdf.org/) for PDFA validation.

Here’s the conversion code (in kotlin):
When using this code (groupdocs 24.5)

val pdfOptions = PdfOptions()
pdfOptions.pdfFormat = PdfFormats.PdfA_1B

val convertOptions = PdfConvertOptions()
convertOptions.format = PdfFileType.Pdf
convertOptions.pdfOptions = pdfOptions

val byteArrayInputStream = { ByteArrayInputStream(documentFromUrl) }
val converter = Converter(byteArrayInputStream)

val pdfOutputStream = ByteArrayOutputStream()
val pdf = { pdfOutputStream }
converter.convert(pdf, convertOptions) 

Here’s the validation errors we get from veraPDF:

The value of Creator entry from the document information dictionary, if present, and its analogous XMP property xmp:CreatorTool shall be equivalent.
The value of Title entry from the document information dictionary, if present, and its analogous XMP property dc:title['x-default'] shall be equivalent.
The value of Author entry from the document information dictionary, if present, and its analogous XMP property dc:creator shall be equivalent. dc:creator shall contain exactly one entry
The value of Producer entry from the document information dictionary, if present, and its analogous XMP property pdf:Producer shall be equivalent.
The value of Keywords entry from the document information dictionary, if present, and its analogous XMP property pdf:Keywords shall be equivalent.

A Group object with an S key with a value of Transparency shall not be included in a form XObject. A Group object with an S key with a value of Transparency shall not be included in a page dictionary

All non-symbolic TrueType fonts shall specify MacRomanEncoding or WinAnsiEncoding, either as the value of the Encoding entry in the font dictionary or as the value of the BaseEncoding entry in the dictionary that is the value of the Encoding entry in the font dictionary. If the value of the Encoding entry is a dictionary, it shall not contain a Differences entry.

The PDF/A version and conformance level of a file shall be specified using the PDF/A Identification extension schema. 

@JohnnyP
We have opened the following new ticket(s) in our internal issue tracking system and will deliver their fixes according to the terms mentioned in Free Support Policies.

Issue ID(s): CONVERSIONJAVA-2430

You can obtain Paid Support Services if you need support on a priority basis, along with the direct access to our Paid Support management team.