两个pdf文档中的字体属性看起来相似,但外观和感觉不同
我有我的客户提供的PDF模板文档作为参考。我的应用程序必须创建它。当我比较应用程序生成的PDF和客户端提供的模板时,我可以看到外观和感觉略有不同。我在Adobe acrobat pro dc中打开它,仍然可以看到字体属性是相同的。请查看下面的链接,以查看我创建的具有上述问题的PDF标题 请看图片: 我在xml中定义了字体属性,如下所示。这将在稍后取消编组两个pdf文档中的字体属性看起来相似,但外观和感觉不同,pdf,pdf-generation,itext,Pdf,Pdf Generation,Itext,我有我的客户提供的PDF模板文档作为参考。我的应用程序必须创建它。当我比较应用程序生成的PDF和客户端提供的模板时,我可以看到外观和感觉略有不同。我在Adobe acrobat pro dc中打开它,仍然可以看到字体属性是相同的。请查看下面的链接,以查看我创建的具有上述问题的PDF标题 请看图片: 我在xml中定义了字体属性,如下所示。这将在稍后取消编组 <font name="Arial Narrow" id="blackBold" fsize="12" type="bold" rgb
<font name="Arial Narrow" id="blackBold" fsize="12" type="bold" rgb="0,0,0"/>
itext字体将从未编组的xml字体对象创建,如下所示:
FontFactory.registerDirectories();
com.itextpdf.text.Font itextFont =
FontFactory.getFont(sbcFont.getName(), sbcFont.getFsize(), fontAndAlignmentMap.get(sbcFont.getType()), new BaseColor(r,g,b));
10页的pdf文档具有不同的字体和格式。静态定义的字体将被解组并加载到itextFontMap中,如下所示
itextFontMap.put(sbcFont.getId(), itextFont);
getId()是“blackBold”、“blackRegular”等。这取决于将从此映射中提取的适当字体的使用
Phrase pSbc = new Phrase("Summary of Benefits and Coverage:",
SBCMappingSingletonBuilder.itextFontMap.get("blackBold"));`
Phrase pSbcDesc = new Phrase(
" What this Plan Covers & What You Pay For Covered Services",
SBCMappingSingletonBuilder.itextFontMap.get("blackRegular"));
当我打印com.itextpdf.text.Font对象的族名称时
blackBold.getFamilyname() :Arial Narrow
blackRegular.getFamilyname() :Arial Narrow
这是从代码中打印出来的内容
sbcFont.getName() :Arial Narrow Bold
sbcFont.getName() :Arial Narrow
短语添加到PdfPCell
PdfPCell
添加到PdfPTable
中,然后添加到文档中
有谁能给我点启发吗?我正在使用Java1.6和itextpdf-5.3.4
我所指的示例模板请单击
我正在尝试创建与模板类似的模板,请单击
我在Adobe Acrobat Pro中打开了pdf。虽然字体属性在Adobe Acrobat Pro中显示为粗体,但粗体字体看起来很窄。但是当我在浏览器中打开pdf时,它看起来很好。我编辑了这个问题,因为它很难阅读,我认为这是由于格式问题。既然问题的格式正确了,仍然很难理解。我们需要查看PDF,但也需要:什么是itextFontMap
,为什么该映射理解“blackBold”
和“blackRegular”
?sbcFont.getName()
返回什么,您确定itextFont
不仅仅是Helvetica,因为sbcFont.getName()
不能被识别为注册字体吗?这张fontAndAlignmentMap
是关于什么的?将样式映射为整数是非常奇怪的。此问题无法回答。@AmedeeVanGasse我已更新了代码并提供了指向pdf文件的链接。谢谢。@BrunoLowagie感谢您编辑我的问题并将其框成更好的形状。我已提供了包括pdf文件在内的详细信息。请查看。Thanks@AmedeeVanGasse你觉得我的PDF有什么问题吗提供?@BrunoLowagie您在比较PDF时看到问题了吗?我在创建PDF时遗漏了什么吗?
sbcFont.getName() :Arial Narrow Bold
sbcFont.getName() :Arial Narrow