Hi
I’m converting a PDF to PDF/A-2b, but it ends up with incorrect glyph width information, causing the letters to be spaced too far from each other.
The same error occurs in these cases:
PDF to PDF/A-1b
PDF/A-1b version of this file to PDF/A-2b
PDF/A-1b to PDF/A-2b (might not be a useful conversion, but still).
I also get a validation error from veraPDF (https://verapdf.org/), the PDF/A validation library that we use.
Here’s one of the validation errors (there are 13 of these in total):
VeraPDFValidation(ruleId=RuleId(specification=ISO 19005-2:2011, clause=6.2.11.5, testNumber=1), message=For every font embedded in a conforming file and used for rendering, the glyph width information in the font dictionary and in the embedded font program shall be consistent., location=Location(level=CosDocument, context=root/document[0]/pages[0](3 0 obj PDPage)/contentStream[0](11 0 obj PDContentStream)/operators[11]/usedGlyphs[0](LVOMWA+000aa1+Arial LVOMWA+000aa1+Arial 1 0 0)))
Here’s the conversion code (kotlin):
val pdfOptions = PdfOptions()
pdfOptions.pdfFormat = PdfFormats.PdfA_2B
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)
We are using Groupdocs.Conversion 24.6 (java).
I have attached the input pdf in PDF 1.6 format w/embedded fonts, and the resulting PDF/A-2b.
input_pdf_16.pdf (9.6 KB)
result_pdfa2b.pdf (9.9 KB)