List of usage examples for com.itextpdf.text.pdf PdfReader PdfReader
public PdfReader(final PdfReader reader)
From source file:com.cyberninjas.pdf.PdfEditor.java
License:Open Source License
/** * Constructs an instance of {@code PdfEditor}. * * @param src the source PDF file location. * @throws IOException on I/O error reading PDF source file. *///from w w w . j a va 2s . c o m public PdfEditor(final String src) throws IOException { reader = new PdfReader(src); baos = new ByteArrayOutputStream(); try { stamper = new PdfStamper(reader, baos); } catch (DocumentException ex) { throw new PdfException("Failed to iniatialize PdfStamper", ex); } }
From source file:com.docdoku.server.esindexer.ESTools.java
License:Open Source License
private static String pdfDocumentToString(InputStream inputStream, String fullName) throws IOException { StringBuilder buf = new StringBuilder(); try (InputStream pdfStream = new BufferedInputStream(inputStream)) { PdfReader reader = new PdfReader(pdfStream); for (int i = 1; i <= reader.getNumberOfPages(); i++) { buf.append(pdfPageToString(reader, i, fullName)); }/*from w ww .ja va 2 s . co m*/ reader.close(); } return buf.toString(); }
From source file:com.docdoku.server.extras.TitleBlockGenerator.java
License:Open Source License
public static InputStream mergePdfDocuments(InputStream input1, InputStream input2) { try {// w w w . j a va2 s . c o m File tmpDir = com.google.common.io.Files.createTempDir(); File tmpCopyFile = new File(tmpDir, TEMP_FILE_NAME); InputStream[] files = { input1, input2 }; Document doc = new Document(); PdfCopy copy = new PdfCopy(doc, new FileOutputStream(tmpCopyFile)); doc.open(); PdfReader pdfReader; int n; // TODO check for resources to be closed for (InputStream file : files) { pdfReader = new PdfReader(file); n = pdfReader.getNumberOfPages(); for (int page = 0; page < n;) { copy.addPage(copy.getImportedPage(pdfReader, ++page)); } } doc.close(); tmpDir.deleteOnExit(); return new FileInputStream(tmpCopyFile); } catch (Exception e) { LOGGER.log(Level.INFO, null, e); } return null; }
From source file:com.education.freelancer.MainActivity.java
private void doSaveToPdf() { PdfReader reader = null;//from w w w . ja v a 2 s .c o m SharedPreferences sharedpreferences = getSharedPreferences("my_shared", Context.MODE_PRIVATE); // SharedPreferences prefs = this.getSharedPreferences("general_settings", Context.MODE_PRIVATE); String count = sharedpreferences.getString("count", "1"); String pdfPath1 = Environment.getExternalStorageDirectory().getPath() + "/DigitSign/abc" + count + ".pdf"; try { reader = new PdfReader(getAssets().open("abc.pdf")); // reader = new PdfReader(getResources().openRawResource(R.raw.abc)); // reader = new PdfReader( pdfPath ); } catch (IOException e) { e.printStackTrace(); } AcroFields fields = reader.getAcroFields(); try { OutputStream output = null; PdfStamper stamper = new PdfStamper(reader, new FileOutputStream(pdfPath1)); AcroFields acroFields = stamper.getAcroFields(); acroFields.setField("page2_1", getUserdetails(0)); acroFields.setField("page3_2", getUserdetails(1)); acroFields.setField("page3_3", getUserdetails(2)); acroFields.setField("page3_4", getUserdetails(3)); acroFields.setField("page3_6", getUserdetails(4)); acroFields.setField("page6_1", getUserdetails(5)); acroFields.setField("page6_2", getUserdetails(6)); acroFields.setField("page6_4", getUserdetails(7)); setSignatureStamp(stamper, acroFields, "page3_1"); setSignatureStamp(stamper, acroFields, "page3_5"); setSignatureStamp(stamper, acroFields, "page6_3"); stamper.setFormFlattening(true); stamper.close(); int cou = Integer.parseInt(count); String newCount = Integer.toString(++cou); SharedPreferences.Editor editor = sharedpreferences.edit(); editor.putString("count", newCount); editor.commit(); } catch (IOException e) { e.printStackTrace(); } catch (DocumentException e) { e.printStackTrace(); } }
From source file:com.ephesoft.dcma.util.PDFUtil.java
License:Open Source License
/** * The <code>getSelectedPdfFile</code> method is used to limit the file * to the page limit given./* www . j a va 2s . com*/ * * @param pdfFile {@link File} pdf file from which limit has to be applied * @param pageLimit int * @throws IOException if file is not found * @throws DocumentException if document cannot be created */ public static void getSelectedPdfFile(final File pdfFile, final int pageLimit) throws IOException, DocumentException { PdfReader reader = null; Document document = null; PdfContentByte contentByte = null; PdfWriter writer = null; FileInputStream fileInputStream = null; FileOutputStream fileOutputStream = null; File newFile = null; if (null != pdfFile && pdfFile.exists()) { try { document = new Document(); fileInputStream = new FileInputStream(pdfFile); String name = pdfFile.getName(); final int indexOf = name.lastIndexOf(IUtilCommonConstants.DOT); name = name.substring(0, indexOf); final String finalPath = pdfFile.getParent() + File.separator + name + System.currentTimeMillis() + IUtilCommonConstants.EXTENSION_PDF; newFile = new File(finalPath); fileOutputStream = new FileOutputStream(finalPath); writer = PdfWriter.getInstance(document, fileOutputStream); document.open(); contentByte = writer.getDirectContent(); reader = new PdfReader(fileInputStream); for (int i = 1; i <= pageLimit; i++) { document.newPage(); // import the page from source pdf final PdfImportedPage page = writer.getImportedPage(reader, i); // add the page to the destination pdf contentByte.addTemplate(page, 0, 0); page.closePath(); } } finally { closePassedStream(reader, document, contentByte, writer, fileInputStream, fileOutputStream); } if (pdfFile.delete() && null != newFile) { newFile.renameTo(pdfFile); } else { if (null != newFile) { newFile.delete(); } } } }
From source file:com.erikHolz.vertretungsplan.Converter.java
License:Open Source License
public void parsePDF() throws IOException { PdfReader reader = new PdfReader(fileDest + ".pdf"); PdfReaderContentParser parser = new PdfReaderContentParser(reader); PrintWriter out = new PrintWriter(new FileOutputStream(fileDest + "__.txt")); TextExtractionStrategy strategy;/* w w w . java2s . co m*/ for (int intI = 1; intI <= reader.getNumberOfPages(); intI++) { strategy = parser.processContent(intI, new LocationTextExtractionStrategy()); out.println(strategy.getResultantText()); } out.flush(); out.close(); reader.close(); // lschen der ursprnglichen pdf File f = new File(fileDest + ".pdf"); if (f.exists()) f.delete(); }
From source file:com.github.albfernandez.joinpdf.JoinPdf.java
License:Open Source License
private void addPdf(final File file, final Document document, final PdfWriter writer) throws Exception { PdfReader pdfReader = null;//from ww w . ja va 2 s. co m try (InputStream is = new FileInputStream(file)) { pdfReader = new PdfReader(is); PdfContentByte cb = writer.getDirectContent(); for (int currentPage = 1; currentPage <= pdfReader.getNumberOfPages(); currentPage++) { Rectangle currentPageSize = pdfReader.getPageSize(currentPage); document.setPageSize(currentPageSize); document.newPage(); PdfImportedPage page = writer.getImportedPage(pdfReader, currentPage); cb.addTemplate(page, 0, 0); writePageNumber(cb); } writer.flush(); } finally { if (pdfReader != null) { writer.freeReader(pdfReader); ItextUtils.close(pdfReader); } } }
From source file:com.github.albfernandez.joinpdf.JoinPdf.java
License:Open Source License
private static int getPageCountPdf(final InputStream is) { PdfReader pdfReader = null;//from www .ja va2s . c om try { pdfReader = new PdfReader(is); return pdfReader.getNumberOfPages(); } catch (Exception e) { return 0; } finally { ItextUtils.close(pdfReader); } }
From source file:com.github.hossman.PdfShrinker.java
License:Apache License
public static void main(String args[]) throws Exception { if (1 != args.length) { System.err.println("Run this app with a single command line PDF filename"); System.err.println("The specified file will be read, and a shrunk version written to stdout"); System.err.println("ie: java -jar pdf-shrinker.jar big.pdf > small.pdf"); System.exit(-1);/*from w ww . java 2 s . c o m*/ } Document document = new Document(); PdfSmartCopy copy = new PdfSmartCopy(document, System.out); copy.setCompressionLevel(9); copy.setFullCompression(); document.open(); PdfReader reader = new PdfReader(args[0]); List<HashMap<String, Object>> bookmarks = SimpleBookmark.getBookmark(reader); int pages = reader.getNumberOfPages(); for (int i = 0; i < pages; i++) { PdfImportedPage page = copy.getImportedPage(reader, i + 1); copy.addPage(page); } copy.freeReader(reader); reader.close(); copy.setOutlines(bookmarks); document.close(); }
From source file:com.github.naofum.epubconverter.ReadPdf.java
License:Open Source License
public static boolean open(String filename) { try {/*w w w .j ava 2 s . co m*/ reader = new PdfReader(filename); info = reader.getInfo(); } catch (Exception e) { return true; } catch (OutOfMemoryError e) { return true; } catch (NoClassDefFoundError e) { return true; } return false; }