You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@pdfbox.apache.org by "DerekLiu (JIRA)" <ji...@apache.org> on 2019/01/28 02:41:00 UTC
[jira] [Created] (PDFBOX-4445) Need fix accessibility issue
DerekLiu created PDFBOX-4445:
--------------------------------
Summary: Need fix accessibility issue
Key: PDFBOX-4445
URL: https://issues.apache.org/jira/browse/PDFBOX-4445
Project: PDFBox
Issue Type: Bug
Components: Utilities
Reporter: DerekLiu
Using Adobe Acrobat Pro DC to check the accessibility issue, it reported that:
Primary language Failed Text language is specified
Title Failed Document title is showing in title bar
So we may need change the code to support it pass, could you please fix this?
{code}
.../main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java | 10 ++++++++++
.../src/main/java/org/apache/pdfbox/pdfparser/COSParser.java | 3 +++
2 files changed, 13 insertions(+)
diff --git a/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java b/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
index b0474f2b9..472729ea4 100644
--- a/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
+++ b/pdfbox/src/main/java/org/apache/pdfbox/multipdf/PDFMergerUtility.java
@@ -72,6 +72,7 @@ import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDDocume
import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDOutlineItem;
import org.apache.pdfbox.pdmodel.interactive.form.PDAcroForm;
import org.apache.pdfbox.pdmodel.interactive.form.PDField;
+import org.apache.pdfbox.pdmodel.interactive.viewerpreferences.PDViewerPreferences;
/**
* This class will take a list of pdf documents and merge them, saving the
@@ -428,6 +429,15 @@ public class PDFMergerUtility
if (destinationDocumentInformation != null)
{
destination.setDocumentInformation(destinationDocumentInformation);
+ if ( destinationDocumentInformation.getTitle() != null ) {
+ if ( destination.getDocumentCatalog().getViewerPreferences() == null ) {
+ destination.getDocumentCatalog().setViewerPreferences( new PDViewerPreferences( new COSDictionary() ) );
+ }
+ destination.getDocumentCatalog().getViewerPreferences().setDisplayDocTitle( true );
+ }
+ if ( destinationDocumentInformation.getCOSObject().getString( COSName.LANG ) != null ) {
+ destination.getDocumentCatalog().setLanguage( destinationDocumentInformation.getCOSObject().getString( COSName.LANG ) );
+ }
}
if (destinationMetadata != null)
{
diff --git a/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java b/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
index 8ca955ed2..b2b28b258 100644
--- a/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
+++ b/pdfbox/src/main/java/org/apache/pdfbox/pdfparser/COSParser.java
@@ -721,6 +721,9 @@ public class COSParser extends BaseParser
}
}
+ if( fileOffset == null ) {
+ continue;
+ }
List<COSObject> stmObjects = objToBeParsed.get(fileOffset);
if (stmObjects == null)
{
{code}
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@pdfbox.apache.org
For additional commands, e-mail: dev-help@pdfbox.apache.org