您可以設定使用 pdflatex 編譯的 PDF 的自然語言嗎?

您可以設定使用 pdflatex 編譯的 PDF 的自然語言嗎?

您能否指定自然語言pdflatex使用?編譯的 PDF 的這聽屯無障礙檢查器不喜歡我的 PDF,因為尚未設定。這一頁將其稱為“PDF 文件目錄中的 /Lang 條目”,並描述如何在 Adob​​e Acrobat 中更改它。但最好在編譯時自動設定它。我想像有一個設定可以傳遞給hyperref設定自然語言,但我還沒有找到它。

答案1

以下文檔通過了您連結的測試。從範例中應該可以明顯看出如何設定語言。

\documentclass{article}

\usepackage{hyperref}
\hypersetup{
  pdftitle={Test},
  pdflang={en-US}, % PDF language identifier (RFC 3066)
}

\begin{document}

\section{foobar}

\end{document}

如果由於某種原因無法使用hyperref,您也可以使用以下命令手動修改PDF目錄

\pdfcatalog{/Lang (en-US)}

如果您想產生真正易於存取的 PDF,以上都不夠。它所做的一切就是關閉這個特定的檢查器。

答案2

的答案亨利·門克截至 2020 年已過時。

現在有一種透過使用套件來設定語言的更優雅的方法hyperxmp:

\documentclass{article}

\usepackage{hyperref}
\usepackage[english]{babel}
\usepackage{hyperxmp}[2020/06/15]

\title{Test}

\begin{document}

\section{foobar}

\end{document}

babel也可以使用

\usepackage{polyglossia}
\setdefaultlanguage[variant=US]{english}

該方法的優點hyperxmp是它避免了元資料中的語言與用於格式化文字的語言之間的不匹配。另外,因為幾乎每個人都使用其中之一,babel或者polyglossia代碼更短。

不是使用\pdfcatalog{/Lang (en-US)}此方法是因為此方法不寫入 XMP 元資料。一些依賴它的讀者可能無法正常工作。此外,\pdfcatalog僅包含主要語言,而 XMP 將包含所有主要語言。如果您不需要超鏈接,請使用NoHyper環境。

相關內容