我正在使用页面事件使用iText在pdf文件中添加页眉和页脚。页眉需要使用其他颜色,但是我不确定如何更改文本的颜色。似乎没有任何函数调用都会更改文本颜色,例如段落的样式。
@Override
public void handleEvent(Event event) {
PdfDocumentEvent docEvent = (PdfDocumentEvent) event;
if (docEvent.getDocument().getPageNumber(docEvent.getPage()) != 1) {
try {
PdfCanvas canvas = new PdfCanvas(docEvent.getPage());
canvas.beginText();
canvas.setFontAndSize(PdfFontFactory.createFont(FontConstants.HELVETICA_OBLIQUE), 24);
canvas.moveText(50, PageSize.A4.getHeight() - 50)
.showText("Header")
.endText()
.release();
} catch (IOException e) {
e.printStackTrace();
} catch (java.io.IOException ex) {
Logger.getLogger(PDFHeaderPageNumberEvt.class.getName()).log(Level.SEVERE, null, ex);
}
}
}
最佳答案
PdfCanvas
对象具有setFillColorRgb()
方法。
canvas.moveText(50, PageSize.A4.getHeight() - 50)
.setFillColorRgb(255,0,0) // Red
.showText("Header")
.endText()
.release();
将产生红色的标题。