PDF 文件除了具有跨平台、可攜性高的特性外,
最大的妙用就是在字型的處理。

所謂跨平台是指:
不管在 Windows、Linux 或 Mac OS 環境下,
只要安裝閱讀軟體(如:Adobe Reader)即可開啟 PDF 檔。
可攜性高則是指:
在某台電腦以 Word、Excel、公文製作系統……編輯而成的文件,經轉換為 PDF 檔後,
另一台電腦不需安裝 Word、Excel、公文製作系統……即可得到與列印結果相同的文件。

字型的處理方面,
我們以這個網頁所揭示的「CJK Ext-C 字元 PDF 檔」為例。
這個 PDF 檔並不是將 CJK Ext-C 的字元做成圖片檔,再轉為 PDF 檔,
因為它每個字元都是可以獨立複製出來,再貼到 Word 中使用的!
只是~如果作業系統裡沒有正確的對應字型,它們在 Word 中會呈現為其他字元。

在看到了這樣的 PDF 檔後,我做了下列兩個試驗:
一是在已安裝「新細明體更新套件」的 Windows XP 環境下,
用 Excel 檔列了 CJK、CJK Ext-A、CJK Ext-B 的漢字各 20 個,
然後將這個 Excel 檔用 doPDF 6 的虛擬印表機轉為 PDF 檔。
二是在只有安裝 Windows XP、doPDF 6、Adobe Reader 9 的環境下,
從 CNS11643 網站下載三個 CJK Ext A/B 的字元,
並用其造字轉入工具將這三個字元存入系統造字區的最前面三格後,
在 WordPad 裡輸入這三個字元並用 doPDF 6 的虛擬印表機轉為 PDF 檔。

將這兩個 PDF 檔放到只有安裝 Windows XP、Adobe Reader 9 的環境下,
是可以正常顯示所有字元的,這意味著:這兩個 PDF 檔會將字型也存入 PDF 檔內!
不過它並不是將整個字型檔存入 PDF 檔內,而是只存入文件裡的字元所需的字型,
不然如果要將整個「細明體-ExtB & 新細明體-ExtB」字型(30.8 MB,收錄 42,711 個字元)存入 PDF 中的話,
那這個 PDF 檔將會超過 30.8 MB(即使壓縮技術再好,至少也要 1MB,但這個 PDF 檔只有 92.2 KB)。

另外,將第二個 PDF 檔放到安裝 Windows XP、Adobe Reader 9 的另一個環境中,
並從 CNS11643 網站下載另外三個 CJK Ext A/B 的字元,
轉入這台電腦的系統造字區(一樣放在最前面三格),
這個(第二個)PDF 檔原有呈現的字元並不會受到影響,
這又意味著:PDF 文件裡的字元並不會受作業系統的影響,可信度相當高!

doPDF 6、Adobe Reader 9、新細明體更新套件、CNS11643 網站上的字型及工具,
這些軟體其實都是免費的!
所以單純想將文件分享給別人閱讀,而不必讓對方編輯的人,
運用這四套軟體就可以解決 99% 以上的罕見字問題;
前篇探討政府機關公文系統支援 CJK Ext-B 的文章,也可迎刃而解;
也就是公文製作系統應該像 Word 或 WordPad 一樣可以接受各種字元,
上傳時系統自動將其以類似 doPDF 6 這樣的軟體轉為 PDF 檔即可,
別台電腦自然可以正常顯示所有字元,
畢竟正式發出去的公文並不必考慮收文者編輯的問題,
這樣的解決方案才是最符合經濟效益的!

我最近用自然人憑證上網申請戶籍謄本時,
遇到住址有個「邨」(同「村」)字會變「■」,
原因應該出在戶政單位使用封閉的(民眾不會取得的)造字系統,
這種造字系統會在「FA40-FEFE、8E40-A0FE、8140-8DFE、C6A1-C8FE」四個造字區裡,
選擇一個可用的字碼,然後為這個字描繪字型
(我稱它為造字字型,這個字型通常會與所有 Windows 的字型連結,
因此不管在新細明體或標楷體下,都能顯示出這個字),
造字系統同時也會將它與輸入法連結。
因為它是用 HTML 方式讓我下載,
而我的 Windows 並不會有這個造字字型,所以就會顯示成「■」!
(註:CNS11643 也是用這種方式將字型匯入四個造字區中)
如果它能轉成 PDF 檔後再讓我下載的話,
就可以正常顯示這個「邨」字了!
因為 PDF 檔可以嵌入戶政單位為這個字造的字型,
同時也不必擔心下載者的電腦是否裝有造字字型。
就算哪天戶政單位改用支援 Unicode 3.1 的新細明體,
並將資料庫編碼改為 UTF-8 時,
也不必擔心下載者的新細明體版本是否老舊到只支援 Unicode 1.0,
因為就算下載者的電腦只裝英文版的 Windows XP,
沒有新細明體(也就是中文檔名在檔案總管中會顯示為「□」)也無所謂,
他只要再安裝較新版的 Adobe Reader 即可正常顯示及閱讀,
完全不必安裝任何中文字型。
遺憾的是公家機關現在並沒有這樣的思維,
對於 Big5 碼以外的中文字元,
仍舊不願使用 Unicode 的碼位來存檔,
寧可繼續使用造字區的碼位來存檔。

arrow
arrow
    全站熱搜

    terryhung 發表在 痞客邦 留言(0) 人氣()