Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 添加页眉时,是否有办法在iText中使用pdfcanvas设置字体?_Java_Pdf_Itext - Fatal编程技术网

Java 添加页眉时,是否有办法在iText中使用pdfcanvas设置字体?

Java 添加页眉时,是否有办法在iText中使用pdfcanvas设置字体?,java,pdf,itext,Java,Pdf,Itext,我正在使用页面事件在我的pdf中使用iText添加页眉和页脚。页眉需要不同的颜色,但我不确定如何更改文本的颜色。似乎没有任何函数调用来更改文本颜色,就像段落的颜色一样 @Override public void handleEvent(Event event) { PdfDocumentEvent docEvent = (PdfDocumentEvent) event; if (docEvent.getDocument().getPageNumber(docEvent.getPa

我正在使用页面事件在我的pdf中使用iText添加页眉和页脚。页眉需要不同的颜色,但我不确定如何更改文本的颜色。似乎没有任何函数调用来更改文本颜色,就像段落的颜色一样

@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();

将生成红色标题。

PdfCanvas对象有一个
setFillColorRgb()
方法

canvas.moveText(50, PageSize.A4.getHeight() - 50)
                        .setFillColorRgb(255,0,0) // Red
                        .showText("Header")
                        .endText()
                        .release();
将生成红色标题