python Wand

时间:2016-03-18 10:55:10

标签: python wand

我有一个包含10页的.tif文件。我想创建一个仅包含2-7页的子图像,但生成的文件比原始文件大得多。它应该更小。你会建议什么?这是我的代码:

from wand.image import Image

with Image(filename='test.tif') as original:
    with Image() as sub_image:
        sub_image.sequence.extend(original.sequence[2:7])
        sub_image.save(filename='sub.tif')

原文:3mb

Sub:50mb(!)

编辑:这是一个示例源文件:tif file

1 个答案:

答案 0 :(得分:0)

TIFF文件中有很多内容。在命令行中尝试以下操作。

convert 'test.tif[2-7]' \
        -define 'tiff:rows-per-strip=3504' \
        -colorspace YCBCR \
        -alpha remove \
        -auto-level \
        -compress JPEG \
        -endian LSB \
        -depth 8 \
        output.tif

上述所有选项均与rows-per-strip以外的原始文件相匹配。原始文件的rows-per-strip为3507;这不是8的倍数(不知道会有什么影响)。

支持大多数选项,应在您的调用脚本中实施/尊重。

对于-define 'tiff:rows-per-strip=3504',请参阅this answer