批量转换TIFF图像为PDF ImageMagick Python

时间:2013-09-18 12:03:51

标签: python python-2.7 pdf-generation tiff imagemagick-convert

我正在尝试使用以下代码将多个tiff图像转换为一个PDF文件,但它无效。 os.system('convert "G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\1.tiff" "G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\2.tiff" "G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\3.tiff" "G:\xyz\abc\TitleDocumentsDownload\Output\abc\PDFs\2009033100558001.pdf"')

但是我从os.system电话收到以下错误消息:
参数无效 - “G:\ Reonomy \ ACRIS \ TitleDocumentsDownload \ Output \ QN_15_65 \ 2009033100558001 \ 2.tiff”

当我在Windows中的命令行上运行完全相同的命令时,PDF文件已成功创建,并显示以下警告消息:
convert.exe:遇到标记为33000(0x80e8)的未知字段。 `TIFFReadDirecto ry'@ warning / tiff.c / TIFFWarnings / 824。

我不知道为什么会在Python中发生这种情况。任何快速解决方案都将不胜感激。

2 个答案:

答案 0 :(得分:0)

这对我很有用:

import os
os.system('convert G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\1.tiff G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\2.tiff G:\xyz\abc\TitleDocumentsDownload\Output\abc\2009033100558001\3.tiff G:\xyz\abc\TitleDocumentsDownload\Output\abc\PDFs\2009033100558001.pdf')

你能试试看是否有错误吗? 你在linux机器上运行第一个命令吗?

这可能会发生,因为convert是一个用于更改文件系统的Windows实用程序。阅读this链接。你是从ImageMagick文件夹运行命令行吗?

最简单的解决方案是将convert.exe文件(ImageMagick)重命名为其他名称,例如convertMagick.exe,然后在os.system参数中使用相同的文件。

答案 1 :(得分:0)

Here is a pure python implementation I whipped up that does not rely on ImageMagick. It only relies on PIL and reportlab. It can run on restricted environments like Google App Engine.

{
  -webkit-appearance: initial;
  appearance: initial`
}