FontColor no iText

1 resposta
A
Oi pessoal, sou novo aqui no Forum. Estou com problemas em formatar a cor da fonte para imprimir em PDF. Este é um exemplo do tutorial da página do iText. Esta dando erro na formatação da cor - new Color(0x00, 0xFF, 0x00).
import com.itextpdf.text.Chunk;
import com.itextpdf.text.Document;
import com.itextpdf.text.DocumentException;
import com.itextpdf.text.Font;
import com.itextpdf.text.FontFactory;
import com.itextpdf.text.Paragraph;
import com.itextpdf.text.pdf.BaseFont;
import com.itextpdf.text.pdf.PdfContentByte;
import com.itextpdf.text.pdf.PdfWriter;
import java.awt.Color;
import java.io.FileOutputStream;
import java.io.IOException;

public class ChunkColor {

    public static void main(String[] args) {

        // step 1: creation of a document-object
        Document document = new Document();
        try {	// step 2:
            // we create a writer that listens to the document
            PdfWriter writer = PdfWriter.getInstance(document, new FileOutputStream("ChunkColor.pdf"));
            // step 3: we open the document
            document.open();
            // step 4:
            Font red = FontFactory.getFont(FontFactory.HELVETICA, Font.DEFAULTSIZE, Font.BOLD, new Color(0xFF, 0x00, 0x00));
            Font blue = FontFactory.getFont(FontFactory.HELVETICA, Font.DEFAULTSIZE, Font.ITALIC, new Color(0x00, 0x00, 0xFF));
            Paragraph p;
            p = new Paragraph("Roses are ");
            p.add(new Chunk("red", red));
            document.add(p);
            p = new Paragraph("Violets are ");
            p.add(new Chunk("blue", blue));
            document.add(p);
            BaseFont bf = FontFactory.getFont(FontFactory.COURIER).getCalculatedBaseFont(false);
            PdfContentByte cb = writer.getDirectContent();
            cb.beginText();
            cb.setColorFill(new Color(0x00, 0xFF, 0x00));
            cb.setFontAndSize(bf, 12);
            cb.showTextAligned(PdfContentByte.ALIGN_CENTER, "Grass is green", 250, 700, 0);
            cb.endText();
        } catch (DocumentException de) {
            System.err.println(de.getMessage());
        } catch (IOException ioe) {
            System.err.println(ioe.getMessage());
        }
        // step 5: we close the document
        document.close();
    }
}

1 Resposta

M

pode ser meio tarde, mas pode ajudar alguém futuramente … assim como eu penei pra conseguir …

Font white = FontFactory.getFont(FontFactory.HELVETICA, Font.DEFAULTSIZE, Font.BOLD, new BaseColor(BaseColor.WHITE.getRGB()));

pelo menos na versão 5.3.3 do itext o construtor não é mais com Color, mas sim, BaseColor e como não precisei procurar a codificação rgb para atender as minhas necessidades eu utilizei desta forma BaseColor.WHITE.getRGB()

espero ajudar alguém!

Criado 27 de janeiro de 2011
Ultima resposta 16 de fev. de 2013
Respostas 1
Participantes 2