【问题标题】:Convert extract seems to extract less than it should转换提取似乎比它应该提取的少
【发布时间】:2019-05-27 02:29:18
【问题描述】:

我想从 png 图片中提取特定区域。所以我阅读了手册,然后选择了 imagemagick。一切都工作了 3 年,现在我面临一些问题。我做了以下:

Version: ImageMagick 6.9.10-8 Q16 x86_64 20180723 https://www.imagemagick.org
Copyright: © 1999-2018 ImageMagick Studio LLC
License: https://www.imagemagick.org/script/license.php
Features: Cipher DPC Modules OpenMP 
Delegates (built-in): bzlib djvu fftw fontconfig freetype jbig jng jpeg lcms lqr ltdl lzma openexr pangocairo png tiff wmf x xml zlib


mischka@enot:/tmp/testgelaende$ identify newmap.png 
newmap.png PNG 2224x3255 2480x3508+130+90 8-bit sRGB 5.70104MiB 0.000u 0:00.000
mischka@enot:/tmp/testgelaende$ convert -extract 2025x2902 /tmp/testgelaende/newmap.png /tmp/testgelaende/target.png
mischka@enot:/tmp/testgelaende$ identify target.png 
target.png PNG 1983x2902 2211x3128+116+80 8-bit sRGB 5.70448MiB 0.000u 0:00.000

我希望 target.png 具有给定的尺寸 2025x2902,但我完全不知道到底发生了什么。我是否错误地使用了提取物?

【问题讨论】:

    标签: imagemagick png extract


    【解决方案1】:

    我找到了解决办法:

    convert target.png -strip target.png
    

    我发现,额外的维度是个问题, -strip 删除它们。

    【讨论】:

    • PNG 支持虚拟画布。您可以使用 +repage 删除它而不会丢失所有其余的元数据。 convert target.png +repage target.png。 PNG 有自己的元数据, -strip 将删除它,这可能会在读取生成的剥离图像时导致警告。所以尝试 +repage 看看是否也有效。在任何处理命令中读取 PNG 文件时,我通常会添加 +repage。这样,我不必重新保存 PNG 文件。
    猜你喜欢
    • 2019-08-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-06-21
    • 2017-01-13
    • 1970-01-01
    • 2019-11-14
    相关资源
    最近更新 更多