首页 > 解决方案 > 水平缩放的 Itextpdf 设置无效

问题描述

当我使用 itextpdf 框架在 PDF 文件中插入文本时,我发现水平缩放效果不佳。是否需要额外的设置才能生效。

PdfContentByte pdfContentByte = this.stamper.getOverContent(1);
pdfContentByte.beginText();
Float left = new Float(UnitConv.mm2pt(11));
Float top = new Float(UnitConv.mm2pt(108));
pdfContentByte.setCharacterSpacing(0);
pdfContentByte.setWordSpacing(0);
String text = "C015849";
pdfContentByte.showTextAligned(PdfContentByte.ALIGN_LEFT, text, left,top, 0);
pdfContentByte.setHorizontalScaling(80);
pdfContentByte.setTextRenderingMode(PdfContentByte.TEXT_RENDER_MODE_STROKE);
pdfContentByte.endText();

如果可行,我认为字符串的整体宽度会更小,单个字符会更细


2018-9-6 解决方案:

在绘制文本之前进行水平缩放

PdfContentByte pdfContentByte = this.stamper.getOverContent(1);
pdfContentByte.setHorizontalScaling(labelContent.getHorizontalScaling());
pdfContentByte.setLineWidth(15);
pdfContentByte.setTextRenderingMode(PdfContentByte.TEXT_RENDER_MODE_FILL_STROKE);
pdfContentByte.beginText();

标签: javaitext

解决方案


推荐阅读