Java Tutorial/PDF/PDF Reader

Материал из Java эксперт
Перейти к: навигация, поиск

Create PdfReader

   <source lang="java">

import com.lowagie.text.pdf.PdfReader; public class MainClass {

 public static void main(String[] args) throws Exception {
   PdfReader reader = new PdfReader("HelloWorldRead.pdf", null);
 }

}</source>





Get Document Information from PdfReader

   <source lang="java">

import com.lowagie.text.pdf.PdfReader; public class MainClass {

 public static void main(String[] args) throws Exception {
   PdfReader reader = new PdfReader("HelloWorldToRead.pdf");
   System.out.println("PDF Version: " + reader.getPdfVersion());
   System.out.println("Number of pages: " + reader.getNumberOfPages());
   System.out.println("File length: " + reader.getFileLength());
   System.out.println("Encrypted? " + reader.isEncrypted());
   System.out.println("Rebuilt? " + reader.isRebuilt());
 }

}</source>





Get Pdf document information as a map

   <source lang="java">

import java.util.Iterator; import java.util.Map; import com.lowagie.text.pdf.PdfReader; public class MainClass {

 public static void main(String[] args) throws Exception {
   PdfReader reader = new PdfReader("HelloWorldToRead.pdf");
   Map info = reader.getInfo();
   for (Iterator i = info.keySet().iterator(); i.hasNext();) {
     String key = (String) i.next();
     String value = (String) info.get(key);
     System.out.println(key + ": " + value);
   }
 }

}</source>





Get Pdf document size

   <source lang="java">

import java.io.FileOutputStream; import java.io.IOException; import com.lowagie.text.Document; import com.lowagie.text.pdf.PdfReader; import com.lowagie.text.pdf.PdfStamper; import com.lowagie.text.pdf.PdfWriter; public class MainClass {

 public static void main(String[] args) throws Exception {
   PdfReader reader = new PdfReader("1.pdf");
   PdfStamper stamper = new PdfStamper(reader, new FileOutputStream("my.pdf"),PdfWriter.VERSION_1_5);
   stamper.setFullCompression();
   stamper.close();
   reader = new PdfReader("1.pdf");
   stamper = new PdfStamper(reader, new FileOutputStream("myDecompressed.pdf"), "1");
   Document.rupress = false;
   int total = reader.getNumberOfPages() + 1;
   for (int i = 1; i < total; i++) {
     reader.setPageContent(i, reader.getPageContent(i));
   }
   stamper.close();
   showFileSize("1.pdf");
   showFileSize("my.pdf");
   showFileSize("myDecompressed.pdf");
 }
 private static void showFileSize(String filename) throws IOException {
   PdfReader reader = new PdfReader(filename);
   System.out.print("Size ");
   System.out.print(filename);
   System.out.print(": ");
   System.out.println(reader.getFileLength());
 }

}</source>