diff --git a/openhtmltopdf-pdfbox/src/main/java/com/openhtmltopdf/pdfboxout/PdfBoxRenderer.java b/openhtmltopdf-pdfbox/src/main/java/com/openhtmltopdf/pdfboxout/PdfBoxRenderer.java index 222885234..dc2968fa8 100644 --- a/openhtmltopdf-pdfbox/src/main/java/com/openhtmltopdf/pdfboxout/PdfBoxRenderer.java +++ b/openhtmltopdf-pdfbox/src/main/java/com/openhtmltopdf/pdfboxout/PdfBoxRenderer.java @@ -702,11 +702,17 @@ private void addPdfUaXMPSchema(PDDocument doc) { catalog.setMarkInfo(markInfo); PDDocumentInformation info = doc.getDocumentInformation(); + String title = info.getTitle() != null ? info.getTitle() : ""; + + if (title.isEmpty()) { + XRLog.general(Level.WARNING, "No document title provided. Document will not be PDF/UA compliant."); + } + XMPMetadata xmp = XMPMetadata.createXMPMetadata(); xmp.createAndAddDublinCoreSchema(); - xmp.getDublinCoreSchema().setTitle(info.getTitle()); + xmp.getDublinCoreSchema().setTitle(title); String metaDescription = _outputDevice.getMetadataByName("description"); - xmp.getDublinCoreSchema().setDescription(metaDescription != null ? metaDescription : info.getTitle()); + xmp.getDublinCoreSchema().setDescription(metaDescription != null ? metaDescription : title); xmp.createAndAddPDFAExtensionSchemaWithDefaultNS(); xmp.getPDFExtensionSchema().addNamespace( "http://www.aiim.org/pdfa/ns/schema#", "pdfaSchema");