use of com.itextpdf.kernel.pdf.PdfReader in project i7j-pdfsweep by itext.
the class FilteredImagesCacheTest method filteredImagesCacheFlushingTest02.
@Test
public void filteredImagesCacheFlushingTest02() throws IOException, InterruptedException {
String input = inputPath + "severalImageXObjectOccurrences.pdf";
String output = outputPath + "filteredImagesCacheFlushingTest02.pdf";
String cmp = inputPath + "cmp_filteredImagesCacheFlushingTest02.pdf";
PdfDocument pdfDocument = new PdfDocument(new PdfReader(input), new PdfWriter(output));
PdfCleanUpTool cleanUpTool = new PdfCleanUpTool(pdfDocument);
cleanUpTool.addCleanupLocation(new PdfCleanUpLocation(1, new Rectangle(150, 300, 300, 150)));
cleanUpTool.cleanUp();
PdfImageXObject img = pdfDocument.getPage(1).getResources().getImage(new PdfName("Im1"));
img.makeIndirect(pdfDocument).flush();
cleanUpTool.addCleanupLocation(new PdfCleanUpLocation(2, new Rectangle(150, 300, 300, 150)));
cleanUpTool.cleanUp();
cleanUpTool.addCleanupLocation(new PdfCleanUpLocation(3, new Rectangle(150, 300, 300, 150)));
cleanUpTool.cleanUp();
pdfDocument.close();
compareByContent(cmp, output, outputPath, "1.2");
assertNumberXObjects(output, 1);
}
use of com.itextpdf.kernel.pdf.PdfReader in project i7j-pdfsweep by itext.
the class PdfAutoSweepToolsTest method highlightTest.
@Test
public void highlightTest() throws IOException, InterruptedException {
String input = INPUT_PATH + "Lipsum.pdf";
String output = OUTPUT_PATH + "highlightTest.pdf";
String cmp = INPUT_PATH + "cmp_highlightTest.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(CompressionConstants.NO_COMPRESSION));
// sweep
PdfAutoSweepTools autoSweep = new PdfAutoSweepTools(strategy);
autoSweep.highlight(pdf);
pdf.close();
// compare
compareByContent(cmp, output, OUTPUT_PATH, "diff_highlightTest_");
}
use of com.itextpdf.kernel.pdf.PdfReader in project i7j-pdfsweep by itext.
the class PdfAutoSweepToolsTest method getPdfCleanUpLocationsTest.
@Test
public void getPdfCleanUpLocationsTest() throws IOException {
String input = INPUT_PATH + "Lipsum.pdf";
CompositeCleanupStrategy strategy = new CompositeCleanupStrategy();
strategy.add(new RegexBasedCleanupStrategy("(D|d)olor"));
PdfDocument pdf = new PdfDocument(new PdfReader(input), new PdfWriter(new ByteArrayOutputStream()));
// sweep
List cleanUpLocations = (List) new PdfAutoSweepTools(strategy).getPdfCleanUpLocations(pdf.getPage(1));
pdf.close();
// compare
Assert.assertEquals(2, cleanUpLocations.size());
}
use of com.itextpdf.kernel.pdf.PdfReader 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_");
}
use of com.itextpdf.kernel.pdf.PdfReader 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);
}
}
Aggregations