Search in sources :

Example 76 with PdfDocument

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

the class PdfAutoSweepToolsTest method tentativeCleanUpTest.

@Test
public void tentativeCleanUpTest() throws IOException, InterruptedException {
    String input = INPUT_PATH + "Lipsum.pdf";
    String output = OUTPUT_PATH + "tentativeCleanUp.pdf";
    String cmp = INPUT_PATH + "cmp_tentativeCleanUp.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new RegexBasedCleanupStrategy("(D|d)olor").setRedactionColor(ColorConstants.GREEN));
    PdfDocument pdf = new PdfDocument(new PdfReader(input), new PdfWriter(output).setCompressionLevel(0));
    // sweep
    PdfAutoSweepTools autoSweep = new PdfAutoSweepTools(strategy);
    autoSweep.tentativeCleanUp(pdf);
    pdf.close();
    // compare
    compareByContent(cmp, output, OUTPUT_PATH, "diff_tentativeCleanUp_");
}
Also used : RegexBasedCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.RegexBasedCleanupStrategy) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfAutoSweepTools(com.itextpdf.pdfcleanup.autosweep.PdfAutoSweepTools) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) 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 77 with PdfDocument

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

the class CustomLocationExtractionStrategy method redactIPhoneUserManualMatchColor.

@Test
public void redactIPhoneUserManualMatchColor() throws IOException, InterruptedException {
    String input = inputPath + "iphone_user_guide_untagged.pdf";
    String output = outputPath + "redactIPhoneUserManualMatchColor.pdf";
    String cmp = inputPath + "cmp_redactIPhoneUserManualMatchColor.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new CustomLocationExtractionStrategy("(iphone)|(iPhone)"));
    PdfDocument pdf = new PdfDocument(new PdfReader(input), new PdfWriter(output));
    // sweep
    PdfCleaner.autoSweepCleanUp(pdf, strategy);
    pdf.close();
    // compare
    CleanUpImagesCompareTool cmpTool = new CleanUpImagesCompareTool();
    String errorMessage = cmpTool.extractAndCompareImages(output, cmp, outputPath, "4");
    // TODO DEVSIX-4047 Switch to compareByContent() when the ticket will be resolved
    String compareByContentResult = cmpTool.compareVisually(output, cmp, outputPath, "diff_redactIPhoneUserManualMatchColor_", cmpTool.getIgnoredImagesAreas());
    if (compareByContentResult != null) {
        errorMessage += compareByContentResult;
    }
    if (!errorMessage.equals("")) {
        Assert.fail(errorMessage);
    }
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) CleanUpImagesCompareTool(com.itextpdf.pdfcleanup.util.CleanUpImagesCompareTool) 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 78 with PdfDocument

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

the class CustomLocationExtractionStrategy method redactTonySoprano.

@Test
public void redactTonySoprano() throws IOException, InterruptedException {
    String input = inputPath + "TheSopranos.pdf";
    String output = outputPath + "redactTonySoprano.pdf";
    String cmp = inputPath + "cmp_redactTonySoprano.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new RegexBasedCleanupStrategy("Tony( |_)Soprano"));
    strategy.add(new RegexBasedCleanupStrategy("Soprano"));
    strategy.add(new RegexBasedCleanupStrategy("Sopranos"));
    PdfWriter writer = new PdfWriter(output);
    writer.setCompressionLevel(0);
    PdfDocument pdf = new PdfDocument(new PdfReader(input), writer);
    // sweep
    PdfCleaner.autoSweepCleanUp(pdf, strategy);
    pdf.close();
    // compare
    compareResults(cmp, output, outputPath, "4");
}
Also used : RegexBasedCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.RegexBasedCleanupStrategy) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) 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 79 with PdfDocument

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

the class CustomLocationExtractionStrategy method cleanUpAreaCalculationPrecisionTest.

@Test
public void cleanUpAreaCalculationPrecisionTest() throws IOException, InterruptedException {
    String input = inputPath + "cleanUpAreaCalculationPrecision.pdf";
    String output = outputPath + "cleanUpAreaCalculationPrecision.pdf";
    String cmp = inputPath + "cmp_cleanUpAreaCalculationPrecision.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new CustomLocationExtractionStrategy("(iphone)|(iPhone)"));
    PdfDocument pdf = new PdfDocument(new PdfReader(input), new PdfWriter(output));
    // sweep
    PdfCleaner.autoSweepCleanUp(pdf, strategy);
    pdf.close();
    // compare
    CompareTool compareTool = new CompareTool();
    String errorMessage = compareTool.compareByContent(output, cmp, outputPath);
    Assert.assertNull(errorMessage);
}
Also used : PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) CompareTool(com.itextpdf.kernel.utils.CompareTool) CleanUpImagesCompareTool(com.itextpdf.pdfcleanup.util.CleanUpImagesCompareTool) 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 80 with PdfDocument

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

the class CustomLocationExtractionStrategy method redactIPhoneUserManualColored.

@Test
public void redactIPhoneUserManualColored() throws IOException, InterruptedException {
    String input = inputPath + "iphone_user_guide_untagged_small.pdf";
    String output = outputPath + "redactIPhoneUserManualColored.pdf";
    String cmp = inputPath + "cmp_redactIPhoneUserManualColored.pdf";
    CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
    strategy.add(new RegexBasedCleanupStrategy("(iphone)|(iPhone)").setRedactionColor(ColorConstants.GREEN));
    PdfDocument pdf = new PdfDocument(new PdfReader(input), new PdfWriter(output));
    // sweep
    PdfCleaner.autoSweepCleanUp(pdf, strategy);
    pdf.close();
    compareResults(cmp, output, outputPath, "4");
}
Also used : RegexBasedCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.RegexBasedCleanupStrategy) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) CompositeCleanupStrategy(com.itextpdf.pdfcleanup.autosweep.CompositeCleanupStrategy) 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)

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