使用ImageMagick和python。 (在Linux系统上)

时间:2011-02-17 11:17:03

标签: python linux imagemagick

我想定义一个“调用”imagemagick来转换图像的函数。

def convert(filein,fileout):
#imagemagick>convert filein fileout

如何使用Python调用和使用imagemagick?

我在linux系统上运行,安装了imagemagick,我没有使用PIL.module,因为它不处理PPM [p3]。

4 个答案:

答案 0 :(得分:15)

免责声明:我是魔杖的作者。

您可以使用Wand轻松完成此操作,这是ImageMagick for Python的简单绑定。例如,以下代码将PNG图像转换为JPEG图像:

from wand.image import Image

with Image(filename='in.png') as img:
    img.format = 'jpeg'
    img.save(filename='out.jpg')

同样请参阅this tutorial

答案 1 :(得分:7)

使用Python的一个shell接口(os.system,subprocess.Popen)来调用imagemagick二进制文件,或者尝试PythonMagick

答案 2 :(得分:6)

我建议你使用子流程它更安全

import subprocess
params = ['convert', 'src_file', 'result_file']
subprocess.check_call(params)

答案 3 :(得分:3)

我没有使用图像魔法,但您可以使用os.system来调用shell命令:

import os
os.system('imagemagick-converting-command filein fileout')   

我建议你像Python一样使用PythonMagic。它由ImageMagic提供,因此必须是python可用的最佳端口之一。