另一个针对GraphicsMagick的Python包装器
项目描述
关于
pgmagick是基于boost.python的针对GraphicsMagick的另一个包装器。
安装
安装到
$ pip install pgmagick
需求
Python3.5++ (或Python2.7), GraphicsMagick和Boost.Python。
Debian Buster上的包安装
$ apt-get install g++ libgraphicsmagick++1-dev libboost-python-dev
Ubuntu上的包安装(在Ubuntu10.04+上测试)
### Ubuntu11.10+ ### $ apt-get install python-pgmagick ### Ubuntu10.04+ ### $ apt-get install libgraphicsmagick++1-dev $ apt-get install libboost-python1.40-dev
Fedora上的包安装
$ yum install GraphicsMagick-c++-devel $ yum install boost-devel
从源代码包安装GraphicsMagick
$ ./configure --enable-shared=yes $ make && make install
MacOSX
通过homebrew-cask(homebrew-pgmagick)与Python3使用
$ brew tap hhatto/pgmagick $ brew install pgmagick
通过homebrew-cask(homebrew-pgmagick)与Python3使用
通过homebrew和pip与Python3使用
在MacOSX (10.13.5~10.15.x)上
$ brew install python $ brew install graphicsmagick $ brew install boost-python3 $ pip install pgmagick
Windows
现在,没有官方支持。然而,存在 非官方 二进制包。
ImageMagick支持
pgmagick支持ImageMagick库。 (版本:0.4+)
Ubuntu上的包安装(在Ubuntu10.04+上测试)
$ apt-get install libmagick++-dev
显示库名称和版本
>>> from pgmagick import gminfo >>> gminfo.library 'GraphicsMagick' # or 'ImageMagick' >>> gminfo.version '1.3.x' >>>
用法
缩放示例
>>> from pgmagick import Image
>>> im = Image('input.jpg')
>>> im.quality(100)
>>> im.scale('100x100')
>>> im.sharpen(1.0)
>>> im.write('output.jpg')
调整大小示例
>>> from pgmagick import Image
>>> im = Image('input.jpg')
>>> im.filterType(FilterTypes.SincFilter)
>>> im.resize('100x100')
>>> im.write('output.jpg')
合成示例
>>> from pgmagick import Image, CompositeOperator as co
>>> base = Image('base.png')
>>> layer = Image('layer_one.png')
>>> base.composite(layer, 100, 100, co.OverCompositeOp)
>>> im.write('output.png')
绘图示例
>>> from pgmagick import Image, DrawableCircle, DrawableText, Geometry, Color
>>> im = Image(Geometry(300, 300), Color("yellow"))
>>> circle = DrawableCircle(100, 100, 20, 20)
>>> im.draw(circle)
>>> im.fontPointsize(65)
>>> text = DrawableText(30, 250, "Hello pgmagick")
>>> im.draw(text)
>>> im.write('hoge.png')
blob访问
>>> from pgmagick import Image, Blob, Geometry
>>> blob = Blob(open('filename.jpg').read())
>>> blob.update(open('filename2.jpg').read())
>>> img = Image(blob, Geometry(600, 480))
>>> img.scale('300x200')
>>> img.write('out.jpg')
创建动画GIF
from pgmagick import Image, ImageList, Geometry, Color
imgs = ImageList()
for color in ('red', 'blue', 'green', 'black', 'yellow'):
imgs.append(Image(Geometry(200, 200), Color(color)))
imgs.animationDelayImages(100)
imgs.scaleImages(Geometry(100, 100))
imgs.writeImages('output.gif')
更多API详情...请参阅GraphicsMagick的Magick++ API文档。
Python APIs(注意!!这个API是alpha版本!!)
>>> from pgmagick.api import Image
>>> img = Image((300, 300), "gradient:#ffffff-#000000")
>>> img.scale(0.8)
>>> img.write('out.png')
链接
项目详情
关闭
pgmagick-0.7.6.tar.gz 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | fe7f5fb92ee465ade0955dd810c181b9965334133dad4d4b423a29c1f2ec9d91 |
|
| MD5 | de5b1a8d554eec3faa793e85109753c6 |
|
| BLAKE2b-256 | dfa83e87660d430da66a2fbe8a88495b57824b58362136643dbd688644a2f1b6 |