Search in sources :

Example 96 with PdfDocument

use of com.itextpdf.kernel.pdf.PdfDocument in project i7j-pdfsweep by itext.

the class PdfCleanUpToolTest method autoCleanPageWithAdditionalLocationTest.

@Test
public void autoCleanPageWithAdditionalLocationTest() throws Exception {
    String input = INPUT_PATH + "fontCleanup.pdf";
    String output = OUTPUT_PATH + "autoCleanPageWithAdditionalLocationTest.pdf";
    String cmp = INPUT_PATH + "cmp_autoCleanPageWithAdditionalLocationTest.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new RegexBasedCleanupStrategy("leonard"));
    List<PdfCleanUpLocation> additionalLocation = Arrays.asList(new PdfCleanUpLocation(1, new Rectangle(0, 0, 200, 100), ColorConstants.RED));
    try (PdfReader reader = new PdfReader(input);
        PdfWriter writer = new PdfWriter(output);
        PdfDocument document = new PdfDocument(reader, writer)) {
        PdfCleaner.autoSweepCleanUp(document.getPage(1), strategy, additionalLocation);
    }
    compareByContent(cmp, output, OUTPUT_PATH, "autoCleanPageWithAdditionalLocationTest");
}
Also used : RegexBasedCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.RegexBasedCleanupStrategy) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfString(com.itextpdf.kernel.pdf.PdfString) PdfReader(com.itextpdf.kernel.pdf.PdfReader) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Example 97 with PdfDocument

use of com.itextpdf.kernel.pdf.PdfDocument in project i7j-pdfsweep by itext.

the class PdfCleanUpToolTest method documentInNonStampingModeTest.

@Test
public void documentInNonStampingModeTest() throws IOException {
    PdfDocument pdfDocument = new PdfDocument(new PdfReader(INPUT_PATH + "fontCleanup.pdf"));
    List<PdfCleanUpLocation> cleanUpLocations = Arrays.asList(new PdfCleanUpLocation(1, new Rectangle(0, 0, 500, 500)));
    Exception e = Assert.assertThrows(PdfException.class, () -> PdfCleaner.cleanUp(pdfDocument, cleanUpLocations));
    Assert.assertEquals(CleanupExceptionMessageConstant.PDF_DOCUMENT_MUST_BE_OPENED_IN_STAMPING_MODE, e.getMessage());
}
Also used : Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfReader(com.itextpdf.kernel.pdf.PdfReader) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) IOException(java.io.IOException) PdfException(com.itextpdf.kernel.exceptions.PdfException) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Example 98 with PdfDocument

use of com.itextpdf.kernel.pdf.PdfDocument in project i7j-pdfsweep by itext.

the class PdfCleanUpToolTest method autoCleanPageWithAdditionalLocationAndPropertyTest.

@Test
public void autoCleanPageWithAdditionalLocationAndPropertyTest() throws Exception {
    String input = INPUT_PATH + "fontCleanup.pdf";
    String output = OUTPUT_PATH + "autoCleanPageWithAdditionalLocationAndPropertyTest.pdf";
    String cmp = INPUT_PATH + "cmp_autoCleanPageWithAdditionalLocationAndPropertyTest.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new RegexBasedCleanupStrategy("leonard"));
    List<PdfCleanUpLocation> additionalLocation = Arrays.asList(new PdfCleanUpLocation(1, new Rectangle(0, 0, 200, 100), ColorConstants.RED));
    try (PdfReader reader = new PdfReader(input);
        PdfWriter writer = new PdfWriter(output);
        PdfDocument document = new PdfDocument(reader, writer)) {
        PdfCleaner.autoSweepCleanUp(document.getPage(1), strategy, additionalLocation, new CleanUpProperties());
    }
    compareByContent(cmp, output, OUTPUT_PATH, "autoCleanPageWithAdditionalLocationAndPropertyTest");
}
Also used : RegexBasedCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.RegexBasedCleanupStrategy) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) Rectangle(com.itextpdf.kernel.geom.Rectangle) PdfString(com.itextpdf.kernel.pdf.PdfString) PdfReader(com.itextpdf.kernel.pdf.PdfReader) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Example 99 with PdfDocument

use of com.itextpdf.kernel.pdf.PdfDocument in project digilib by robcast.

the class PDFStreamWorker method renderPDF.

/**
 * @throws DocumentException
 * @throws InterruptedException
 * @throws ExecutionException
 * @throws IOException
 * @throws ImageOpException
 */
protected OutputStream renderPDF() throws InterruptedException, ExecutionException, IOException, ImageOpException {
    long start_time = System.currentTimeMillis();
    // create document object
    PdfWriter writer = new PdfWriter(outstream);
    PdfDocument pdfdoc = new PdfDocument(writer);
    doc = new Document(pdfdoc, PageSize.A4);
    logger.debug("PDF: {} doc.open()ed ({}ms)", outstream, (System.currentTimeMillis() - start_time));
    // add title page
    PDFTitlePage titlepage = new PDFTitlePage(job_info);
    titlepage.createPage(doc);
    // add pages
    NumRange pgs = job_info.getPages();
    for (int p : pgs) {
        // start new page
        doc.add(new AreaBreak());
        logger.debug("PDF: adding Image {} to {}", p, outstream);
        // copy request and set page number (as new Parameter)
        DigilibRequest pageRequest = new DigilibRequest(dlConfig, job_info);
        pageRequest.put("pn", new Parameter("pn", p, p));
        // create ImageJobInformation
        ImageJobDescription iji = ImageJobDescription.getRawInstance(pageRequest, job_info.getDlConfig());
        iji.prepareScaleParams();
        addImage(doc, iji);
        logger.debug("PDF: done adding Image {} to {}", p, outstream);
    }
    logger.debug("PDF: done adding all Images to {}", outstream);
    doc.close();
    logger.debug("PDF: {} doc.close() ({}ms)", outstream, (System.currentTimeMillis() - start_time));
    writer.flush();
    writer.close();
    return outstream;
}
Also used : NumRange(digilib.util.NumRange) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) ImageJobDescription(digilib.image.ImageJobDescription) DigilibRequest(digilib.conf.DigilibRequest) Parameter(digilib.util.Parameter) AreaBreak(com.itextpdf.layout.element.AreaBreak) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) Document(com.itextpdf.layout.Document) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument)

Example 100 with PdfDocument

use of com.itextpdf.kernel.pdf.PdfDocument in project ComponentManagement by Bac3Phi.

the class InventoriesReportController method printData.

public void printData() {
    DirectoryChooser chooser = new DirectoryChooser();
    chooser.setTitle("BÁO CÁO HÀNG TỒN");
    File defaultDirectory = new File("c:/");
    chooser.setInitialDirectory(defaultDirectory);
    File selectedDirectory = chooser.showDialog(Main.window);
    try {
        PdfWriter writer;
        writer = new PdfWriter(selectedDirectory.getAbsolutePath() + "/BaoCaoThuChi_Thang" + cbbMonth.getSelectionModel().getSelectedItem() + "_2018.pdf");
        // Creating a PdfDocument
        PdfDocument pdfDoc = new PdfDocument(writer);
        // Adding a new page
        pdfDoc.addNewPage();
        // Creating a Document
        Document document = new Document(pdfDoc);
        addTitlePage(document);
        addDate(document);
        addInfo(document);
        addContent(document);
        // Closing the document
        document.close();
    } catch (Exception e) {
        e.printStackTrace();
    }
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) Document(com.itextpdf.layout.Document) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) File(java.io.File) DirectoryChooser(javafx.stage.DirectoryChooser) PdfDocument(com.itextpdf.kernel.pdf.PdfDocument) SQLException(java.sql.SQLException) IOException(java.io.IOException)

Aggregations

PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)205 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)194 Document (com.itextpdf.layout.Document)131 Paragraph (com.itextpdf.layout.element.Paragraph)110 PdfReader (com.itextpdf.kernel.pdf.PdfReader)64 PdfFont (com.itextpdf.kernel.font.PdfFont)45 ExtendedITextTest (com.itextpdf.test.ExtendedITextTest)45 IntegrationTest (com.itextpdf.test.annotations.type.IntegrationTest)45 Test (org.junit.Test)45 Rectangle (com.itextpdf.kernel.geom.Rectangle)41 HyphenationConfig (com.itextpdf.layout.hyphenation.HyphenationConfig)32 BufferedReader (java.io.BufferedReader)26 FileReader (java.io.FileReader)26 ArrayList (java.util.ArrayList)26 AreaBreak (com.itextpdf.layout.element.AreaBreak)25 Image (com.itextpdf.layout.element.Image)25 Table (com.itextpdf.layout.element.Table)25 CompositeCleanupStrategy (com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy)22 List (java.util.List)22 Cell (com.itextpdf.layout.element.Cell)21