23. 印刷格物致知
          23.3. PDF
              23.3.4. PDF檔案格式
 23.3.4.2. 字體(Fonts)

在 PDF 檔案內 PostScript(Type 1 和 Type 3)和 TrueType 字體都可以使用,從 PDF 1.6 起 OpenType 字體也可以直接儲存於 PDF 檔案內,PDF 1.6 之前,OpenType 字體以 PostScript Type 1 或 TrueType 字體嵌入。

通常偏好習慣是頁面排列佈局上使用的任何字體都包含在 PDF 檔案本身內,這樣可以確保該檔案被檢視與印刷的結果都與設計師創作時的一模一樣,包含字體到 PDF 檔案內有兩個機制:

  • 內嵌 (Embedding):字體的整個字符集的完整拷貝存入 PDF
  • 子集 (Subsetting):只有版面上被使用過的字元才存入 PDF,如果“$”字元不在內文上出現過,則該字符將不包括在該字體內;這表示子集內嵌的 PDF 檔案小於字體完整內嵌的 PDF 檔案

如果某些字體不存在於 PDF 檔案內,Adobe Acrobat 和 Adobe Reader 會自動嘗試使用程式內建的 Multiple  Master 字體來仿效缺失的字體,這樣一來檔案的外觀不會與設計者做的一模一樣,但至少文字不會重排 (Reflow)。

這裡使用的 Multiple  Master 字體是:

  • Adobe Serif MM
  • Adobe Sans MM

PDF 檔案內用了哪些字體?

Adobe Acrobat 和 Adobe Reader 在“Document Info”視窗內提供一個 'Font info' 選項,此選項不會列出檔案中使用的所有字體,它只顯示目前顯示頁面上用的字體,請不要依賴於它來精準取得 PDF 檔案內所使用字體概述。

可以使用 Enfocus PitStop 插件來列出所有使用字體的概述。

嵌入字體

Acrobat Distiller 提供了一個選項以自動添加遺失的字體到它要處理的 PostScript 檔案,在字體位置選單內用戶可以定義多個檔案夾以供搜尋 PostScript 檔案內遺失的字體,Distiller 只需要印表機字體,它不需要螢幕字體。

不包括在 PDF 檔案的字體

舊版的 Adobe Acrobat(Acrobat 3.x 與更早的)永不會嵌入下列 14 個字體到 PDF 檔案內:

  • Courier, Courier-Bold, Courier-Oblique, Courier-BoldOblique
  • Times, Times-Bold, Times-Oblique, Times-BoldOblique
  • Helvetica, Helvetica-Bold, Helvetica-Oblique, Helvetica-BoldOblique
  • Symbol
  • ZapfDingbats

除了 ZapfDingbats 外,這些字體稱為基本 13 字體 (Base 13 fonts)。

從 Acrobat4.x 開始不再有嵌入上述 14 字體的問題,另一方面卻多了一個限制:如果 TrueType 的授權策略禁止字型被包嵌入一個檔案中,Distiller 4 和以後的版本都將尊重這項限制設定而不嵌入該字體。

字體子集內嵌 (Subsetting)

也有可以只包含字體中真正有用在該出版物的字符,這項技術稱為字體子集內嵌 (font subsetting),使用 Distiller 的 'Subset fonts below XX%' 設定參數,您可以決定出版物內使用低於多少字符百分比的字體要使用字體子集內嵌。

字體子集內嵌有兩個優點:

  • 當檔案大小很關鍵時,它能減低 PDF 檔案大小,例如放在網站供人下載的 PDF 檔案
  • RIPs內總是使用子集內嵌字體,甚至是 RIP 內有完整的字體,這樣可避免因為字體間的差異造成的文字重排

字體子集內嵌有兩個缺點:

  • 如果要在 Acrobat 內編輯的文字而且新字符不包括在子集內,它便無法被更正
  • 合併兩個檔案分別包含相同的字體之不同的子集,可能導致有些字符丟失

字體轉外框

有時將一個 PDF 內的所有字體轉換成外框是比較實際的,這個做法讓 PDF 內的文字'鎖定',不會發生因為一些怪異的字體的行為導致不同的 RIP 有不同的輸出;您應該知道字體轉外框會影響其品質:在較小字的輸出品質將略為下降(因為沒有字體 hinting 了),同時和小字體也可能變得粗一些。

在 Acrobat 8 Professional 選單 Advanced > Print Production > Flattener Preview 內有一個選項可以將所有的文字轉成外框,這只會對頁面內有透明物件的文字轉外框,所以操作技巧是在每一頁上添加一個透明物件(無論是使用浮水印或使用 PitStop Professional),可以在這個網頁找到一個有關此技巧的討論和螢幕快照說明。

建議

為了盡量減少在 PDF 內字體可能帶來的問題,請試著遵循以下這些準則:

  • 總是設定 Distiller 在字體不見時產生錯誤結果
  • 總是嵌入所有字體
  • 總是嵌入完整的字體,不是子集字體,這可避免一個罕見的問題,例如把幾個使用相同字體不同子集字體的頁面置放在同一版面上有時會遺失ㄧ些字符
  • 永遠關閉“Use local fonts in Acrobat”(使用本地的字體)
  • 永遠為有 Courier 字體的 PDF 檔案做預檢(以免某一字體已被取代)
  • 切勿使用 TouchUp 文字編輯工具
  • 刪除 RIP 內的所有字體(除了 Courier, Helvetica 或是任何其他 RIP 能正確運作所需的字體)
  • 僅使用的 Adobe PostScript 3 或基於 Harlequin 的 RIPs 或輸出設備,有一些 RIPs / 輸出設備在處理某些字體時會發生問題(例如 InDesign 產生的 PDF 檔案內的 CID 字體)

Table of contents