Search in sources :

Example 1 with PdfDocumentInfo

use of com.itextpdf.kernel.pdf.PdfDocumentInfo in project MtgDesktopCompanion by nicho92.

the class PDFExport method exportDeck.

@Override
public void exportDeck(MagicDeck deck, File f) throws IOException {
    var table = new Table(3).useAllAvailableWidth();
    try (var pdfDocDest = new PdfDocument(new PdfWriter(f));
        Document doc = new Document(pdfDocDest)) {
        pdfDocDest.setDefaultPageSize(PageSize.A4);
        PdfDocumentInfo info = pdfDocDest.getDocumentInfo();
        info.setTitle(deck.getName());
        info.setAuthor(getString("AUTHOR"));
        info.setCreator(MTGConstants.MTG_APP_NAME);
        info.setKeywords(deck.getTags().stream().collect(Collectors.joining(",")));
        info.addCreationDate();
        var mainList = deck.getMainAsList();
        Collections.sort(mainList, new CardsDeckSorter(deck));
        for (MagicCard card : mainList) {
            table.addCell(createCell(card));
            notify(card);
        }
        doc.add(table);
    } catch (Exception e) {
        logger.error("Error in pdf creation " + f, e);
    }
}
Also used : Table(com.itextpdf.layout.element.Table) CardsDeckSorter(org.magic.api.sorters.CardsDeckSorter) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfDocumentInfo(com.itextpdf.kernel.pdf.PdfDocumentInfo) MagicCard(org.magic.api.beans.MagicCard) Document(com.itextpdf.layout.Document) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) NotImplementedException(org.apache.commons.lang3.NotImplementedException) IOException(java.io.IOException)

Example 2 with PdfDocumentInfo

use of com.itextpdf.kernel.pdf.PdfDocumentInfo in project i7js-highlevel by itext.

the class C07E10_PrinterPreferences method createPdf.

public void createPdf(String dest) throws IOException {
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfViewerPreferences preferences = new PdfViewerPreferences();
    preferences.setPrintScaling(PdfViewerPreferencesConstants.NONE);
    preferences.setNumCopies(5);
    pdf.getCatalog().setViewerPreferences(preferences);
    PdfDocumentInfo info = pdf.getDocumentInfo();
    info.setTitle("A Strange Case");
    Document document = new Document(pdf, PageSize.A4.rotate());
    document.add(new Paragraph("Mr. Jekyl and Mr. Hyde"));
    document.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfDocumentInfo(com.itextpdf.kernel.pdf.PdfDocumentInfo) PdfViewerPreferences(com.itextpdf.kernel.pdf.PdfViewerPreferences) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Document(com.itextpdf.layout.Document) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 3 with PdfDocumentInfo

use of com.itextpdf.kernel.pdf.PdfDocumentInfo in project i7js-highlevel by itext.

the class C07E12_Metadata method createPdf.

public void createPdf(String dest) throws IOException {
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest, new WriterProperties().addXmpMetadata().setPdfVersion(PdfVersion.PDF_1_6)));
    PdfDocumentInfo info = pdf.getDocumentInfo();
    info.setTitle("The Strange Case of Dr. Jekyll and Mr. Hyde");
    info.setAuthor("Robert Louis Stevenson");
    info.setSubject("A novel");
    info.setKeywords("Dr. Jekyll, Mr. Hyde");
    info.setCreator("A simple tutorial example");
    Document document = new Document(pdf);
    document.add(new Paragraph("Mr. Jekyl and Mr. Hyde"));
    document.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfDocumentInfo(com.itextpdf.kernel.pdf.PdfDocumentInfo) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Document(com.itextpdf.layout.Document) WriterProperties(com.itextpdf.kernel.pdf.WriterProperties) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Example 4 with PdfDocumentInfo

use of com.itextpdf.kernel.pdf.PdfDocumentInfo in project i7js-highlevel by itext.

the class C07E09_ViewerPreferences method createPdf.

public void createPdf(String dest) throws IOException {
    PdfDocument pdf = new PdfDocument(new PdfWriter(dest));
    PdfViewerPreferences preferences = new PdfViewerPreferences();
    preferences.setFitWindow(true);
    preferences.setHideMenubar(true);
    preferences.setHideToolbar(true);
    preferences.setHideWindowUI(true);
    preferences.setCenterWindow(true);
    preferences.setDisplayDocTitle(true);
    pdf.getCatalog().setViewerPreferences(preferences);
    PdfDocumentInfo info = pdf.getDocumentInfo();
    info.setTitle("A Strange Case");
    Document document = new Document(pdf, PageSize.A4.rotate());
    document.add(new Paragraph("Mr. Jekyl and Mr. Hyde"));
    document.close();
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfDocumentInfo(com.itextpdf.kernel.pdf.PdfDocumentInfo) PdfViewerPreferences(com.itextpdf.kernel.pdf.PdfViewerPreferences) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Document(com.itextpdf.layout.Document) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Paragraph(com.itextpdf.layout.element.Paragraph)

Aggregations

PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)4 PdfDocumentInfo (com.itextpdf.kernel.pdf.PdfDocumentInfo)4 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)4 Document (com.itextpdf.layout.Document)4 Paragraph (com.itextpdf.layout.element.Paragraph)3 PdfViewerPreferences (com.itextpdf.kernel.pdf.PdfViewerPreferences)2 WriterProperties (com.itextpdf.kernel.pdf.WriterProperties)1 Table (com.itextpdf.layout.element.Table)1 IOException (java.io.IOException)1 NotImplementedException (org.apache.commons.lang3.NotImplementedException)1 MagicCard (org.magic.api.beans.MagicCard)1 CardsDeckSorter (org.magic.api.sorters.CardsDeckSorter)1