簡體   English   中英

使用Wand + ImageMagick調整GIF大小

[英]Resizing GIFs with Wand + ImageMagick

我使用Wand 0.3.7ImageMagick 6.8.8-10批量調整我的一些動畫GIF文件。 但由於某種原因,Wand只調整圖像中的一幀,使其他幀保持原始大小。

這是我想要調整大小的原始圖像:

原始圖像

這是Wand的輸出:

用魔杖調整大小

如果我直接從命令行使用ImageMagick(按照此處的說明),GIF會按預期正確調整大小:

使用ImageMagick調整大小

這就是我目前正在調整圖像大小的方法:

with Image(filename="src.gif") as img:
    img.resize(50, 50)
    img.save("dest.gif")

我也嘗試迭代每個幀並單獨調整它們的大小:

with Image(filename="src.gif") as img:
    for frame in img.sequence:
        frame.resize(50, 50)
        frame.destroy()
    img.save("dest.gif")

兩者都產生了與上面相同的結果。 我究竟做錯了什么?

您可以嘗試打開一個新的目標Image並將每一幀循環到其中:

with Image() as dst_image:
    with Image(filename=src_path) as src_image:
        for frame in src_image.sequence:
            frame.resize(x, y)
            dst_image.sequence.append(frame)
    dst_image.save(filename=dst_path)

適合我。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM