アクセシビリティ レベル PDF/A-1A に到達するために、PDFBox v2.0.13 を使用して PDF に XMP メタデータを設定しています。メタデータを設定する前に、ファイルを .docx から pdf に変換します。XDocReport v.2.0.1 を使用する方法と Docx4j v.6.1.0 を使用する方法の 2 つの変換方法を試しました。
Java クラスには、次のコードがあります。
PDDocumentInformation info = pdf.getDocumentInformation();
info.setTitle("Apache PDFBox");
info.setSubject("Apache PDFBox adding meta-data to PDF document");
info.setCreator("MyCreator");
...
DublinCoreSchema dcSchema = metadata.createAndAddDublinCoreSchema();
dcSchema.setTitle(info.getTitle());
dcSchema.setDescription(info.getSubject());
dcSchema.addCreator(info.getCreator());
XDocReport で変換すると、次のメタデータが得られます。
</rdf:Description>
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about="">
<dc:title>
<rdf:Alt>
<rdf:li xml:lang="x-default">Apache PDFBox</rdf:li>
</rdf:Alt>
</dc:title>
<dc:description>
<rdf:Alt>
<rdf:li xml:lang="x-default">Apache PDFBox adding meta-data to PDF document</rdf:li>
</rdf:Alt>
</dc:description>
<dc:creator>
<rdf:Seq>
<rdf:li>MyCreator</rdf:li>
</rdf:Seq>
</dc:creator>
</rdf:Description>
Docx4j で変換する代わりに、次のメタデータを取得します。
<rdf:Description xmlns:dc="http://purl.org/dc/elements/1.1/" rdf:about="">
<dc:title>
<rdf:Alt>
<rdf:li lang="x-default">Apache PDFBox</rdf:li>
</rdf:Alt>
</dc:title>
<dc:description>
<rdf:Alt>
<rdf:li lang="x-default">Apache PDFBox adding meta-data to PDF document</rdf:li>
</rdf:Alt>
</dc:description>
<dc:creator>
<rdf:Seq>
<rdf:li>MyCreator</rdf:li>
</rdf:Seq>
</dc:creator>
</rdf:Description>
「タイトル」と「説明」に対して作成されたメタデータの違いにより、XDocReport を使用して作成された最終的な pdf は PDF/A-1A にアクセスできますが、Docx4j を使用して作成されたものはアクセスできません。
アクセシビリティ チェックは、VeraPDF を使用して行われます。
Docx4j はより読みやすい PDF を生成するため、最終的な PDF のメタデータを修正する方法はありますか?