2016-08-18 5 views
6

Apache FOP 2.1を使用してPDFファイルを生成しています。Apache FOPでデフォルト言語を設定するには

このため、既定の言語を英語に設定しようとしています。
これは、Adobe Readerの[ファイル/プロパティ/詳細/読み込みオプション]オプションを使用してPDFを作成した後で検証されるはずです。この値は現在空です。

Image showing language is not set

私はトリックを行うために...最初のページシーケンスまたは.xslファイルの非常に最初の要素で、fo:root要素でxml:lang="en"を設定何も継ぎ目を試してみました。

アドバイスはありますか?
ありがとうDimitris。

更新:
の回答で提案されているように私は2のどちらがアップデート2

  1. <fo:declarations> <pdf:catalog xmlns:pdf="http://xmlgraphics.apache.org/fop/‌extensions/pdf"> <pdf:string key="Lang">en</pdf:string> </pdf:catalog>
  2. <x:xmpmeta xmlns:x="adobe:ns:meta/"> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> <rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> <dc:title>the document title</dc:title> <dc:language>en</dc:language>

を働いていた、2より多くのオプションを試してみました
この質問に対して奨励金を開始しました。
助けと感謝の意を表します

+0

Hm、http://stackoverflow.com/questions/38347687/からの回答を使用しようとしています。私は '

+0

私の前回のコメントでは、pdfファイル**のexiftoolは**' Language:en'それで、ファイルに正しく挿入されます。問題は、acrobatプロパティダイアログのフィールドが異なるものを参照している可能性があります。関連項目[PDF16:PDFドキュメントのドキュメントカタログの/ Langエントリを使用してデフォルト言語を設定する](https://www.w3.org/TR/WCAG20-TECHS/PDF16.html) –

+1

私の推測ではReaderではうまくいきません。上記のページ:https://www.w3.org/TR/WCAG20-TECHS/PDF16.htmlにアクセスし、それらが参照する正確なサンプルをダウンロードしてプロパティを見ると、それは空白になります。私はまた、FOP、RenderX、Wordからいくつかのタグ付きの、すべての種類のPDFを検索しました。私はこのように見たときに価値があった単一のものを見つけることができませんでした。 –

答えて

1

languagehttp://www.w3.org/TR/xsl/#language)を設定する必要があります。 http://xmlgraphics.apache.org/fop/compliance.html

あなたはxml:langと思うでしょうが、そうではないと言います。 FOP FAQには、languageを設定してハイフネーションを制御するための回答がありますので、languagefo:blockfo:characterにのみ適用されるように定義されていても試してみる価値があります。

アクセス可能なPDFを有効にする必要があります。 PDFに設定されている言語への参照が含まれている(xml:langを含む)を参照してください。

+0

おかげでトニー、私はすでにこれらを試した...彼らは何の影響もない – Dimitris

1

私が試したことすべてによると、Adobe Readerで表示されるドキュメントプロパティの言語フィールドは、実際にはpdfにあるドキュメント言語とはあまり関係ありません。

FOP 2.1のfo:root内のxml:lang = "en"タグは、exiftoolがドキュメントを英語の言語としてリストするのに十分であり、pdfboxのPDFDebuggerはDocumentカタログの/ Lang Entryそれは言語がpdf_reference 1.7表3.25「カタログ辞書のエントリー」に従って指定されるところです。ラング:

コード

<fo:declarations> 
<pdf:catalog 
    xmlns:pdf="http://xmlgraphics.apache.org/fop/‌extensions/pdf"‌​> 
    <pdf:string key="Lang">en</pdf:string> 
    </pdf:catalog> 

は、XMLとしてPDF出力で正確に同じこと。

はAdditonallyあなたも

<x:xmpmeta 
    xmlns:x="adobe:ns:meta/" 
    xmlns:dc="http://purl.org/dc/elements/1.1/" 
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> 
    <rdf:RDF> 
     <rdf:Description rdf:about=""> 
     <dc:language><rdf:Bag><rdf:li>en</rdf:li></rdf:Bag></dc:language> 

(もfo:declarations内)メタデータに言語を設定することができます。しかし、私のFOP 2.1はXMLの場合はそれも自動的に設定されているようだ:langがあります。

誰かが落ちて、Adobe Readerのドキュメント言語プロパティが実際に示していることを説明できるのは興味深いことでしょう。

+0

これらの2つの仕事のどちらも... :(ありがとうとにかく) – Dimitris

+0

彼らは文書の言語を設定するAdobe Readerが言語フィールドに表示されているものは何ですか?Adobe ReaderがAdobe Readerに表示されているものは何ですか?Adobe Readerのフォーラムを確認してください。 –

+0

"言語"](https://forums.adobe.com/message/8952443) –

関連する問題