C#实现TIF图像转PDF文件的方法

 更新时间:2015年07月06日 16:23:48   作者:DTC2  
这篇文章主要介绍了C#实现TIF图像转PDF文件的方法,涉及C#使用TIFtoPDF工具实现pdf文件转换的技巧,需要的朋友可以参考下

本文实例讲述了C#实现TIF图像转PDF文件的方法。分享给大家供大家参考。具体实现方法如下:

这里介绍使用TIFtoPDF的用法。该工具可以将多个TIF图像文件合并成一个PDF文件

TIFtoPDF.rar文件点击此处本站下载

Program.cs文件如下:

using System;
using System.Collections.Generic;
using System.IO;
using iTextSharp.text;
using iTextSharp.text.pdf;
using iTextSharp.text.pdf.codec;
namespace TIFtoPDF
{
 class Program
 {
  //将多个tif文件合并成一个pdf文件
  private static void tifToPdf(IEnumerable<string> arr, string sFilePdf)
  {
   FileInfo _toFile = new FileInfo(sFilePdf);
   // 创建一个文档对象
   Document doc = new Document(PageSize.A3, 0, 0, 0, 0);
   int pages = 0;
   FileStream fs=new FileStream(sFilePdf,FileMode.OpenOrCreate);
   // 定义输出位置并把文档对象装入输出对象中
   PdfWriter writer = PdfWriter.GetInstance(doc, fs);
   // 打开文档对象
   doc.Open();
   foreach(string sFileTif in arr)
   {
    PdfContentByte cb = writer.DirectContent;
    RandomAccessFileOrArray ra = new RandomAccessFileOrArray(sFileTif);
    int comps = TiffImage.GetNumberOfPages(ra);
    for (int c = 0; c < comps; ++c)
    {
     Image img = TiffImage.GetTiffImage(ra, c + 1);
     if (img != null)
     {
      img.ScalePercent(7200f / img.DpiX, 7200f / img.DpiY);
      doc.SetPageSize(new Rectangle(img.ScaledWidth, img
       .ScaledHeight));
      img.SetAbsolutePosition(0,0);
      cb.AddImage(img);
      doc.NewPage();
      ++pages;
     }
    }
    ra.Close();// 关闭
   }
   // 关闭文档对象,释放资源
   doc.Close();
  }
  public static void Main(string[] args)
  {
   tifToPdf(new string[]{@"C:\test.tif"},@"C:\test.pdf");
  }
 }
}

希望本文所述对大家的C#程序设计有所帮助。

相关文章

最新评论