Example usage for com.itextpdf.text.pdf PdfAConformanceLevel PDF_A_3B

List of usage examples for com.itextpdf.text.pdf PdfAConformanceLevel PDF_A_3B

Introduction

In this page you can find the example usage for com.itextpdf.text.pdf PdfAConformanceLevel PDF_A_3B.

Prototype

PdfAConformanceLevel PDF_A_3B

To view the source code for com.itextpdf.text.pdf PdfAConformanceLevel PDF_A_3B.

Click Source Link

Document

PDF/A-3b

Usage

From source file:io.konik.carriage.itext.ITextInvoiceAppender.java

License:Open Source License

/**
 * Append invoice intern.// w  w  w  .j  a va  2  s.c  o  m
 *
 * @param appendable the appendable
 * @throws IOException Signals that an I/O exception has occurred.
 * @throws DocumentException the document exception
 * @throws XMPException the XMP exception
 */
private void appendInvoiceIntern(AppendParameter appendable)
        throws IOException, DocumentException, XMPException {
    byte[] attachmentFile = convertToByteArray(appendable.attachmentFile());
    PdfReader reader = new PdfReader(appendable.inputPdf());
    PdfAStamper stamper = new PdfAStamper(reader, appendable.resultingPdf(), PdfAConformanceLevel.PDF_A_3B);

    appendZfMetadata(stamper, appendable.zugferdConformanceLevel(), appendable.zugferdVersion());
    attachFile(attachmentFile, stamper);

    stamper.close();
    reader.close();
}

From source file:pdfcreator.PDFCreator.java

License:Open Source License

@SuppressWarnings("static-access")
protected void createPdf(String filename, String[] images) throws Exception {
    Document doc = new Document();
    PdfWriter writer;/*from  w  w  w. j a va 2s . c o  m*/

    if (pdfxConformance.equals("PDFA1A")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_1A);
    } else if (pdfxConformance.equals("PDFA1B")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_1B);
    } else if (pdfxConformance.equals("PDFA2A")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_2A);
    } else if (pdfxConformance.equals("PDFA2B")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_2B);
    } else if (pdfxConformance.equals("PDFA3A")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_3A);
    } else if (pdfxConformance.equals("PDFA3B")) {
        writer = PdfAWriter.getInstance(doc, new FileOutputStream(filename), PdfAConformanceLevel.PDF_A_3B);
    } else {
        writer = PdfWriter.getInstance(doc, new FileOutputStream(filename));
    }

    if (pdfVersion.equals("1.4")) {
        writer.setPdfVersion(PdfWriter.VERSION_1_4);
    } else if (pdfVersion.equals("1.5")) {
        writer.setPdfVersion(PdfWriter.VERSION_1_5);
    } else if (pdfVersion.equals("1.6")) {
        writer.setPdfVersion(PdfWriter.VERSION_1_6);
    } else if (pdfVersion.equals("1.7")) {
        writer.setPdfVersion(PdfWriter.VERSION_1_7);
    } else {
        writer.setPdfVersion(PdfWriter.VERSION_1_4);
    }

    verbose(filename + ": open");

    doc.addCreationDate();
    doc.addCreator(creator);

    if (title != null) {
        doc.addTitle(title);
    }

    for (int i = 0; i < images.length; i++) {
        verbose(" +" + images[i]);

        Image img = Image.getInstance(images[i]);

        doc.setPageSize(new Rectangle(img.getWidth(), img.getHeight()));
        doc.setMargins(0, 0, 0, 0);

        if (doc.isOpen()) {
            doc.newPage();
        } else {
            doc.open();
        }

        doc.add(img);

        doc.newPage();
    }

    ICC_Profile icc = getImageColorProfile(images[0]);

    if (icc == null) {
        System.err.println("warning: no color profile available in " + images[0] + " using " + profileName);
        icc = getDefaultColorProfile();
    }

    writer.setOutputIntents("Custom", "", null, null, icc);

    writer.createXmpMetadata();

    doc.close();

    verbose(filename + ": close");
}