Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java:无法正确呈现pdf中的字符_Java_Pdf_Fonts_Pdf Generation - Fatal编程技术网

Java:无法正确呈现pdf中的字符

Java:无法正确呈现pdf中的字符,java,pdf,fonts,pdf-generation,Java,Pdf,Fonts,Pdf Generation,我们有一套PDF格式的表格。在我们的程序中,我们读取这些表格,填写数据,然后编写它们。我们使用Foxit PDF编辑器找出这些表单上使用的字体是标准字体Helvetica。在编写表格时,我们将字体设置如下: bf=BaseFont.createFont(BaseFont.HELVETICA_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); 问题是:在原始表单上,有些字符无法使用Foxit PDF编辑器识别字体,即,这些字符的字体属性为空。然后在打印

我们有一套PDF格式的表格。在我们的程序中,我们读取这些表格,填写数据,然后编写它们。我们使用Foxit PDF编辑器找出这些表单上使用的字体是标准字体Helvetica。在编写表格时,我们将字体设置如下:

bf=BaseFont.createFont(BaseFont.HELVETICA_BOLD, BaseFont.CP1252, BaseFont.NOT_EMBEDDED); 

问题是:在原始表单上,有些字符无法使用Foxit PDF编辑器识别字体,即,这些字符的字体属性为空。然后在打印的表单上,这些字符无法正确呈现。在Foxit编辑器中,这些字符的字体属性为“非嵌入字体:EuropeanPi三”,而在编写PDF表单时,我们从未将任何字体设置为EuropeanPi三。我们使用包com.lowagie.text在java中处理pdf。有人知道如何处理这个问题吗?谢谢

我对iTextSharp也有类似的问题。
解决方案是设置“替换”字体。该方法被称为类似于
setSubstitutionFont(BaseFont)
的方法