生成pdf文件的好东西,itextsharp

官网:
http://sourceforge.net/projects/itextsharp/
http://hardrock.cnblogs.com/
http://www.rubypdf.com/

现在的版本是3.18版,记得在引用里导入itextsharp.下面的代码是把图象合并到一个多页pdf的例子.

      private void process(string[] files, string newpdf)
        
{
             iTextSharp.text.Document document 
= new iTextSharp.text.Document(iTextSharp.text.PageSize.A4, 25252525);

            
try
            
{
                iTextSharp.text.pdf.PdfWriter.GetInstance(document, 
new FileStream(newpdf, FileMode.Create, FileAccess.ReadWrite));

                document.Open();
                iTextSharp.text.Image image;
                
for (int i = 0; i < files.Length; i++)
                
{
                    image 
= iTextSharp.text.Image.GetInstance(files[i]);
                 
                    
if (image.Height > iTextSharp.text.PageSize.A4.Height - 25)
                    
{
                        image.ScaleToFit(iTextSharp.text.PageSize.A4.Width 
- 25, iTextSharp.text.PageSize.A4.Height - 25);
                    }

                    
else if (image.Width > iTextSharp.text.PageSize.A4.Width - 25)
                    
{
                        image.ScaleToFit(iTextSharp.text.PageSize.A4.Width 
- 25, iTextSharp.text.PageSize.A4.Height - 25);
                    }

                    image.Alignment 
= iTextSharp.text.Image.ALIGN_MIDDLE;
                    
//image.SetDpi(72, 72);

                    document.NewPage();
                    document.Add(image);
                 
                    
//Phrase phrase3 = new Phrase("dreign@163.com\n", FontFactory.GetFont(FontFactory.TIMES, 9, iTextSharp.text.Font.NORMAL, new iTextSharp.text.Color(192, 192, 192)));
                    
//document.Add(phrase3);
                }

            }

            
catch (Exception ioe)
            
{
                MessageBox.Show(ioe.Message);
            }

            document.Close();
        }
原文地址:https://www.cnblogs.com/dreign/p/624648.html