Java 如何更改iTextPdf中批注的字体大小?
我正在编写一个系统,生成一个包含用户提交的评论的PDF文件。我想减小注释的大小,即每个注释的字体大小。我使用的是Java版本的iTextPdf 我的代码:Java 如何更改iTextPdf中批注的字体大小?,java,pdf,annotations,itext,Java,Pdf,Annotations,Itext,我正在编写一个系统,生成一个包含用户提交的评论的PDF文件。我想减小注释的大小,即每个注释的字体大小。我使用的是Java版本的iTextPdf 我的代码: PdfAnnotation annotation = PdfAnnotation.createText(pdfStamper.getWriter(), new Rectangle(x, valor, x+100f, valor+100f), "authors", comentario.getComentario(), tru
PdfAnnotation annotation = PdfAnnotation.createText(pdfStamper.getWriter(),
new Rectangle(x, valor, x+100f, valor+100f), "authors",
comentario.getComentario(), true, "Comment");
annotation.setColor(Color.ORANGE);
我可以这样缩小字体大小吗
annotation.setFontSize("2px");
从API中我可以看到,我会说:不,这是不可能的
也许您可以使用setAppearance方法。iText网站上有一个创建了拥有setFontAndSize方法的PDFaAppearance对象的API。我从未使用过iTextPdf,但它的API说没有setFontSize方法
但是,它确实包含一个,作为参数。PdfContentByte有两个选项。您有两个选项 您可以设置默认字体和大小,如Torgamus勋爵所述 您可以使用批注的富文本值,必须使用从PdfDictionary继承的方法PdfAnnotation直接访问该值: 是的,必须使用压模 也许更容易接受Torg的建议。。。但是小心兔子。它和其他人玩得不好 PS:Splash的setAppearance技巧会奏效,但是你必须自己画整个东西。。。背景、边框和文本布局由于ColumnText而变得更加简单
annotation.put(PdfName.RC, new PdfString( "<font size=\"whatever\">" +
comentario.getComentario() +
"</font>" ) );
myStamper.setGenerateAppearances( false );