簡體   English   中英

iText PDF文本字段中的字符重疊

[英]Overlapping characters in text field iText PDF

我有文本字段包含某些字符的PDF。 但是特定於語言的字符是重疊的。 當它獲得焦點時,文本會更改並正確顯示。 失去焦點時,顯示不正確。 編輯文本時,也可以正確顯示。

文件test_extended_filled.pdf參見下面

我如何創建PDF:

  1. 在OpenOffice Draw 4.0.1-> test.odg中創建的odg模板
  2. 導出為PDF-> test.pdf
  3. 使用Adobe Acrobat X Pro 10.0.0編輯了test.pdf,並使用擴展功能重新保存(需要保存在本地PC上)-> test_extended.pdf
  4. 由Java填寫表格(pdfstamper)-> test_extended_filled.pdf

獎勵:當我在Java中通過pdfstamper更改字體時,看起來更改也僅適用於焦點文本。 -> test_extended_filled_font_size.pdf

注意:當我從2填充test.pdf時 ,它會正確顯示-> text_filled.pdf

附件(前往下載區): https : //rapidshare.com/share/ACC0D81E9235A6DA2CC2353BD21A4C37

在我添加之后

stamper.getAcroFields().addSubstitutionFont

更好,但是有些字符仍然重疊。 -> test_extended_filled_font_size_with_substitution_font.pdf http://rapidshare.com/share/0EE3238F37E9115C36A7A74706B09826

有任何想法嗎?

請看一下FillFormSpecialChars示例和生成的PDF

Open Office並不能真正創建漂亮的表單。 正如mkl已經指出的那樣, NeedAppearances標志可能會導致問題,字段的邊框被繪制到頁面內容上而不是小部件注釋的一部分,等等。

在您的情況下,您定義的字體對於特殊字符不是最佳的。 使用替代字體並不理想,因為您可以清楚地看到繪制字形並不是什么大問題。 問題在於指標全都錯了。 好像特殊字符的提前量為0個字形單位。 在這種情況下,應該使用setFieldProperty()方法更改字體。

暫無
暫無

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

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