簡體   English   中英

在Itext中修改現有PDF的字體

[英]Modify the font of existing PDF in Itext

我可以修改現有PDF的字體嗎? 我有一些Type 3(自定義)字體,沒有任何字體描述符。 我想將它們替換為一些有意義的字體。 如何使用Itext或PDFBox做到這一點?

Type3字體也稱為用戶定義字體 諸如abc ,...之類的字符映射到人定義的字形。 例如, a對應於Apple徽標, b對應於形狀為香蕉的字形, c看起來像椰子。

  • 蘋果,香蕉,椰子等的形狀使用PDF語法存儲在PDF中。 PDF查看器(如Adobe Reader)可以通過執行字體程序繪制蘋果,香蕉,椰子...,在這種情況下, 字體程序由PDF路徑構造和路徑繪制運算符及操作數組成。
  • PDF查看器沒有智能將這些形狀識別為蘋果,香蕉,椰子等的代表。PDF查看器僅知道用戶將這些字形映射到諸如abc等字符。 ..另請參閱我對以下問題的回答: 為什么我不能正確提取使用Type3字體添加的文本?

有時,人們會匹配字符和字形,就像我為iText徽標創建Type3字體時所做的那樣:請閱讀使用Type3字體創建iText徽標 但是,您不應指望這一點。 任何字符都可以映射到任何字形。

現在,您已經知道了這一點,您應該了解,您正在嘗試實現一些不可能的事情。 假設您有一個帶有Type3字體的PDF,其中a字符對應一個蘋果, b字符對應一個香蕉, c字符對應一個椰子,那么將無法自動用a替換這種用戶定義的字體。使用另一種“普通”字體進行自定義編碼 ,該字體不知道如何繪制蘋果,香蕉和椰子,並且使用完全不同的編碼。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM