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");
}
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());
}
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");
}
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;
}
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();
}
}
Aggregations