Blog

 
1:   using System;
2:   using System.IO;
3:  
4:   using iTextSharp.text;
5:   using iTextSharp.text.pdf;
6:  
7:  
8:  
9:   namespace iTextSharp.tutorial.Chap01
10:   {
11:       /// <summary>
12:       /// Concat,PDFMerge
13:       /// </summary>
14:       public class Concat
15:       {
16:           public Concat(String[] args)
17:           {
18:               if (args.Length 3
19:               {
20:                   Console.Error.WriteLine("This tools needs at least 3 parameters:\njava Concat destfile file1 file2 [file3 ...]");
21:               }
22:               else 
23:               {
24:                   try 
25:                   {
26:                       int 1;
27:                       // we create a reader for a certain document
28:                       PdfReader reader new PdfReader(args[f]);
29:                       // we retrieve the total number of pages
30:                       int reader.NumberOfPages;
31:                       Console.WriteLine("There are " " pages in the original file.");
32:                   
33:                       // step 1: creation of a document-object
34:                       Document document new Document(reader.GetPageSizeWithRotation(1));
35:                       // step 2: we create a writer that listens to the document
36:                       PdfWriter writer PdfWriter.GetInstance(documentnew FileStream(args[0], FileMode.Create));
37:                       // step 3: we open the document
38:                       document.Open();
39:                       PdfContentByte cb writer.DirectContent;
40:                       PdfImportedPage page;
41:                       int rotation;
42:                       // step 4: we add content
43:                       while (args.Length
44:                       {
45:                           int 0;
46:                           while (n
47:                           {
48:                               i++;
49:                               document.SetPageSize(reader.GetPageSizeWithRotation(i));
50:                               document.NewPage();
51:                               page writer.GetImportedPage(readeri);
52:                               rotation reader.GetPageRotation(i);
53:                               if (rotation == 90 || rotation == 270
54:                               {
55:                                   cb.AddTemplate(page0, -1f1f00reader.GetPageSizeWithRotation(i).Height);
56:                               }
57:                               else 
58:                               {
59:                                   cb.AddTemplate(page1f001f00);
60:                               }
61:                               Console.WriteLine("Processed page " i);
62:                           }
63:                           f++;
64:                           if (args.Length
65:                           {
66:                               reader new PdfReader(args[f]);
67:                               // we retrieve the total number of pages
68:                               reader.NumberOfPages;
69:                               Console.WriteLine("There are " " pages in the original file.");
70:                           }
71:                       }
72:                       // step 5: we close the document
73:                       document.Close();
74:                   }
75:                   catch(Exception e
76:                   {
77:                       Console.Error.WriteLine(e.Message);
78:                       Console.Error.WriteLine(e.StackTrace);
79:                   }
80:               }
81:  
82:           }
83:       }
84:   }