找回密码
 立即注册

QQ登录

只需一步,快速开始

imp1212

初级会员

7

主题

59

帖子

473

积分

初级会员

积分
473

活字格认证

imp1212
初级会员   /  发表于:2016-8-15 09:40  /   查看:3128  /  回复:4
如题。leadtools提供将tif图片合并为PDF文件的功能。反之,是否有将PDF文件拆分为图片的功能?

Help 19里没有找到相关信息。请帮助解答,谢谢。

4 个回复

倒序浏览
AvoCaDolol活字格认证 Wyn认证
社区贡献组   /  发表于:2016-8-18 16:28:56
沙发
本帖最后由 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)
当然,你可以将我写的代码替换成循环,最好先取到所有页码,然后循环这个页码将每一页都存下来。

回复 使用道具 举报
imp1212
初级会员   /  发表于:2016-8-19 11:08:13
板凳
AvoCaDolol 发表于 2016-8-18 16:28
有两种办法可以做到这一点。
1、LEADTOOLS的虚拟打印机。
2、PDF功能打开文档,然后使用Codec.Save方法循 ...

好的,非常感谢
回复 使用道具 举报
imp1212
初级会员   /  发表于:2016-8-19 11:08:19
地板
AvoCaDolol 发表于 2016-8-18 16:28
有两种办法可以做到这一点。
1、LEADTOOLS的虚拟打印机。
2、PDF功能打开文档,然后使用Codec.Save方法循 ...

好的,非常感谢
回复 使用道具 举报
gw0506
超级版主   /  发表于:2016-8-22 17:30:19
5#
本帖关闭,如有新问题欢迎发新帖提出。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部