本帖最后由 AvoCaDolol 于 2016-8-18 16:37 编辑
有两种办法可以做到这一点。
1、LEADTOOLS的虚拟打印机。
2、PDF功能打开文档,然后使用Codec.Save方法循环将其中的每一页保存为单独图片。
这两种方法都可以做到。但是方法1有个缺点是需要客户安装虚拟打印机,方法2适用于你现在的场景。
方法2的做法如下:
RasterImage img = codecs.Load(Application.StartupPath + "\..\combined.PDF", 0, CodecsLoadByteOrder.BgrOrGray, 1, 4)
codecs.Save(img, Application.StartupPath + "\..\1.tif", RasterImageFormat.Tif, 24, 1, 1, 1, CodecsSavePageMode.Overwrite)
codecs.Save(img, Application.StartupPath + "\..\2.tif", RasterImageFormat.Tif, 24, 2, 2, 1, CodecsSavePageMode.Overwrite)
codecs.Save(img, Application.StartupPath + "\..\3.tif", RasterImageFormat.Tif, 24, 3, 3, 1, CodecsSavePageMode.Overwrite)
codecs.Save(img, Application.StartupPath + "\..\4.tif", RasterImageFormat.Tif, 24, 4, 4, 1, CodecsSavePageMode.Overwrite)
当然,你可以将我写的代码替换成循环,最好先取到所有页码,然后循环这个页码将每一页都存下来。
|