Windows XP Windows 7 Windows 2003 Windows Vista Windows 綜合教學 Linux 系統教學
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟體教學
您现在的位置: Windows教程網 >> Windows教程 >  >> Linux 系統教學 >> 關於 Linux

Linux LaTeX 編譯 PDF 嵌入全字體指令:dvips + ps2pdf 參數完整解析

編輯:關於 Linux

LaTeX 編譯 PDF 若未嵌入字體,跨平台檢視/列印易出現字體替換、缺字、排版錯亂。本文提供從 .tex 經 latex → dvips → ps2pdf 產出**全字體嵌入** PDF 的標準指令鏈與關鍵參數解析,確保 PDF/A 相容與列印品質。

問題現象


pdffonts document.pdf
# 輸出顯示 "Helvetica" 等字體 emb=no (未嵌入)
# 導致不同檢視器/作業系統字體回退、列印缺字

標準嵌入字體指令鏈


# 1. LaTeX 編譯產生 .dvi
latex document.tex

# 2. dvips 轉 PostScript,強制嵌入 Type 1 字體
dvips -Ppdf -G0 -t letter -o document.ps document.dvi
# -Ppdf     : 使用 pdf 印表機設定 (內含字體嵌入配置)
# -G0       : 強制嵌入所有字體 (關鍵)
# -t letter : 紙張大小 (可改 a4)

# 3. ps2pdf 以 Ghostscript 產出高品質 PDF
ps2pdf -dPDFSETTINGS=/prepress \
       -dCompatibilityLevel=1.4 \
       -dAutoFilterColorImages=false \
       -dAutoFilterGrayImages=false \
       -dColorImageFilter=/FlateEncode \
       -dGrayImageFilter=/FlateEncode \
       -dMonoImageFilter=/FlateEncode \
       -dDownsampleColorImages=false \
       -dDownsampleGrayImages=false \
       document.ps document.pdf

ps2pdf 關鍵參數解析

參數效果
-dPDFSETTINGS=/prepress預設高解析度 (300 dpi)、嵌入所有字體、不壓縮影像,適合印前輸出
-dCompatibilityLevel=1.4PDF 1.4 相容性 (支援透明度、JPEG2000 等)
-dAutoFilterColorImages=false停用自動濾鏡選擇,強制指定編碼
-dColorImageFilter=/FlateEncode彩色影像用 Flate (無損壓縮)
-dGrayImageFilter=/FlateEncode灰階影像用 Flate
-dMonoImageFilter=/FlateEncode單色影像用 Flate
-dDownsampleColorImages=false不降採樣彩色影像 (保持原解析度)
-dDownsampleGrayImages=false不降採樣灰階影像

驗證字體嵌入


pdffonts document.pdf
# 所有字體 emb=yes、type=Type 1/TrueType、file=內建

替代方案:pdflatex 直接嵌入 (現代引擎)


# 在 preamble 加入
\usepackage[T1]{fontenc}
\usepackage{lmodern}  # Latin Modern 字體內建 Type 1
# 或使用 fontspec (XeLaTeX/LuaLaTeX) 直接嵌入系統字體
pdflatex document.tex
# 檢查 pdffonts 確認嵌入

現代 pdflatex + lmodern 或 XeLaTeX/LuaLaTeX 通常預設嵌入,但舊版或特殊字體仍需上述 dvips+ps2pdf 流程。

列印廠常見需求對照

需求參數設定
全字體嵌入-G0 (dvips) + -dPDFSETTINGS=/prepress (ps2pdf)
CMYK 色彩空間-dProcessColorModel=/DeviceCMYK
PDF/X-1a 相容-dPDFSETTINGS=/prepress -dPDFA=1 -dPDFACompatibilityPolicy=1
解析度 300 dpi 以上-dPDFSETTINGS=/prepress (預設 300 dpi)

pdffonts 未嵌入字體範例

pdffonts 全字體嵌入後範例

Copyright © Windows教程網 All Rights Reserved