
我必須檢查一份.pdf
包含大量頁面的文件。我希望能夠找到在哪個位置使用哪種字體類型,以便檢查整個文件的一致性。
答案1
我的建議是從pdffonts
實用程式開始。 (稍後您可以轉向更高級的工具,tet
例如pdflib.com如果第一步對您來說還不夠)。
pdffonts
是一個可用於 Windows、Linux 和 Mac OS X 的命令列工具。下載適用於 Windows 的 XPDF 實用程序這裡(在 Linux 上,它們應該預先安裝在大多數系統上)。
嘗試以下操作來熟悉該工具(我假設您使用的是 Windows):
pdffonts.exe -h
然後,針對您的 PDF 文件運行它,以初步了解所使用的所有字體:
pdffonts.exe d:\path\to\your.pdf
現在我們想看看第 11-13 頁有哪些字體:
pdffonts.exe -f 11 -l 13 d:\path\to\your.pdf
您想要第 15 頁的字體嗎?
pdffonts.exe -f 15 -l 15 d:\path\to\your.pdf
或者您想要逐頁使用的字體清單?好的,那麼您需要知道您的 PDF 有多少頁。假設是 1234 頁:
for /l %i in (1,1,1234) do (echo. &^
echo. Page %i:&^
echo. ============&^
pdffonts -f %i -l %i d:\path\to\your.pdf&^
echo.)
在 Linux 上,將該命令更改為:
for i in $(seq 1 1234); do
echo " Page ${i}:"
echo " ============"
pdffonts -f ${i} -l ${i} /path/to/your.pdf
echo
done
現在您應該看到如下所示的輸出:
Page 1:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEFM+Helvetica Type 1C yes yes no 124352 0
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
Page 2:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
DDPEFM+Helvetica Type 1C yes yes no 124352 0
Arial-BoldMT TrueType no no no 3543 0
ArialMT TrueType no no no 3541 0
Page 3:
============
name type emb sub uni object ID
------------------------------------ ----------------- --- --- --- ---------
DDPEFM+Helvetica Type 1C yes yes no 124352 0
DDPEIM+Helvetica-Bold Type 1C yes yes no 124354 0
Arial-BoldMT TrueType no no no 3543 0
ArialMT TrueType no no no 3541 0
有關不同列的確切含義,請參閱man pdffonts
Linux 上的內容,或閱讀 Windows 上的文字檔案pdfinfo.txt
。
答案2
據我所知,您可以在「字體」標籤上的文件屬性對話方塊(「文件」>「屬性」或 ctrl/cmd+D)中看到 pdf 中使用的字體清單。
但該清單並未指明在哪個頁面上使用了特定字體,至少在 Adobe Reader 中沒有。也許 Acrobat Pro 或其他 pdf 閱讀器中有這樣的選項?