Search in sources :

Example 1 with PdfImageXObject

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

the class FilteredImagesCacheTest method filteredImagesCacheFlushingTest01.

@Test
public void filteredImagesCacheFlushingTest01() throws IOException, InterruptedException {
    String input = inputPath + "severalImageXObjectOccurrences.pdf";
    String output = outputPath + "filteredImagesCacheFlushingTest01.pdf";
    String cmp = inputPath + "cmp_filteredImagesCacheFlushingTest01.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(2).getResources().getImage(new PdfName("Im1"));
    img.getPdfObject().release();
    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);
}
Also used : PdfImageXObject(com.itextpdf.kernel.pdf.xobject.PdfImageXObject) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfName(com.itextpdf.kernel.pdf.PdfName) Rectangle(com.itextpdf.kernel.geom.Rectangle) 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 2 with PdfImageXObject

use of com.itextpdf.kernel.pdf.xobject.PdfImageXObject 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);
}
Also used : PdfImageXObject(com.itextpdf.kernel.pdf.xobject.PdfImageXObject) PdfWriter(com.itextpdf.kernel.pdf.PdfWriter) PdfName(com.itextpdf.kernel.pdf.PdfName) Rectangle(com.itextpdf.kernel.geom.Rectangle) 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 3 with PdfImageXObject

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

the class CleanUpCsCompareUtilTest method differentImageColorTypeTest.

@Test
public void differentImageColorTypeTest() {
    PdfImageXObject image1 = createMockedPdfImageXObject(PdfName.DeviceRGB, 8);
    PdfImageXObject image2 = createMockedPdfImageXObject(PdfName.DeviceGray, 8);
    Assert.assertFalse(CleanUpCsCompareUtil.isOriginalCsCompatible(image1, image2));
}
Also used : PdfImageXObject(com.itextpdf.kernel.pdf.xobject.PdfImageXObject) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Example 4 with PdfImageXObject

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

the class CleanUpCsCompareUtilTest method imagesCsApplicableTest.

@Test
public void imagesCsApplicableTest() {
    PdfImageXObject image1 = createMockedPdfImageXObject(PdfName.DeviceGray, 8);
    PdfImageXObject image2 = createMockedPdfImageXObject(PdfName.DeviceGray, 8);
    Assert.assertTrue(CleanUpCsCompareUtil.isOriginalCsCompatible(image1, image2));
}
Also used : PdfImageXObject(com.itextpdf.kernel.pdf.xobject.PdfImageXObject) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Example 5 with PdfImageXObject

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

the class CleanUpCsCompareUtilTest method imagesNotCsApplicableTest.

@Test
public void imagesNotCsApplicableTest() {
    PdfImageXObject image1 = createMockedPdfImageXObject(PdfName.DeviceGray, 8);
    PdfImageXObject image2 = createMockedPdfImageXObject(PdfName.DeviceGray, 16);
    Assert.assertFalse(CleanUpCsCompareUtil.isOriginalCsCompatible(image1, image2));
}
Also used : PdfImageXObject(com.itextpdf.kernel.pdf.xobject.PdfImageXObject) IntegrationTest(com.itextpdf.test.annotations.type.IntegrationTest) ExtendedITextTest(com.itextpdf.test.ExtendedITextTest) Test(org.junit.Test)

Aggregations

PdfImageXObject (com.itextpdf.kernel.pdf.xobject.PdfImageXObject)16 ExtendedITextTest (com.itextpdf.test.ExtendedITextTest)8 IntegrationTest (com.itextpdf.test.annotations.type.IntegrationTest)8 Test (org.junit.Test)8 PdfStream (com.itextpdf.kernel.pdf.PdfStream)5 Rectangle (com.itextpdf.kernel.geom.Rectangle)3 PdfDocument (com.itextpdf.kernel.pdf.PdfDocument)3 PdfName (com.itextpdf.kernel.pdf.PdfName)3 PdfReader (com.itextpdf.kernel.pdf.PdfReader)3 ImageData (com.itextpdf.io.image.ImageData)2 PdfNumber (com.itextpdf.kernel.pdf.PdfNumber)2 PdfWriter (com.itextpdf.kernel.pdf.PdfWriter)2 Logger (org.slf4j.Logger)2 Point (com.itextpdf.kernel.geom.Point)1 PdfArray (com.itextpdf.kernel.pdf.PdfArray)1 PdfDictionary (com.itextpdf.kernel.pdf.PdfDictionary)1 PdfObject (com.itextpdf.kernel.pdf.PdfObject)1 PdfPage (com.itextpdf.kernel.pdf.PdfPage)1 PdfResources (com.itextpdf.kernel.pdf.PdfResources)1 PdfCanvasProcessor (com.itextpdf.kernel.pdf.canvas.parser.PdfCanvasProcessor)1