在 Chunk 的情况下,我们可以指定要使用的文本和字体。例如,我们可以在 Chunk 的情况下设置粗体和字体大小。而在 PdfContentByte 的情况下,我试图将文本设置为粗体

PdfContentByte cb = writer.DirectContent;
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER,"INVOICE",386,596, 0);

使用
cb.SetTextRenderingMode(PdfContentByte.TEXT_RENDER_MODE_FILL_STROKE);

但是渲染的文本太黑了,有没有办法将文本渲染为Chunk的文本以使用类似的字体
 Font contentBoldHead = FontFactory.GetFont("Arial-BoldMT", 14, Font.BOLD);

在 PdfContentByte 中。

任何建议都会非常有帮助。

最佳答案

只是为了补充@calum所说的,解决方案是使用粗体字体。 SetTextRenderingMode 创建了一个人造粗体,这就是为什么它对你来说看起来很糟糕。

cb.SetFontAndSize(FontFactory.GetFont(FontFactory.HELVETICA_BOLD).BaseFont, 20);
cb.BeginText();
cb.ShowTextAligned(PdfContentByte.ALIGN_CENTER, "INVOICE", 386, 596, 0);
cb.EndText();

关于c# - 如何在 iTextSharp 中像块一样呈现 PdfContentByte,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/8139036/

10-15 03:59