2015-06-20 67 views
0

我使用编号/标签的图像(例如1,2,3或A,B,C)与ImageMagick的蒙太奇

montage *.tif output.tif 

几个图像组合为一个。我现在想让它们被编号(有时候是1,2,3 ...; somtimes A,B,C ...) 有哪些可能性来标记组合中的单个图像?有没有将标签放在图片下方的选项,例如,在左上角还是右下角?

可惜我便无法真正弄清楚如何使用-label命令来实现这一目标。感谢您的任何建议。

回答

3

如果你想投资,你可以有更多的控制再努力一点。如果你这样做,你可以在剪辑时将标签“动态”标记为,而不必将它们全部贴上标签,然后剪辑。您还可以控制宽度,在每行图像的数量而言,更容易:

#!/bin/bash 
number=0 
for f in *.tif; do 
    convert "$f" -gravity northwest -annotate +0+0 "$number" miff:- 
    ((number++)) 
done | montage -tile x3 - result.png 

enter image description here

这需要ImageMagick的miff格式,这意味着多个图像文件格式的优点来连接所有输出图像并将其发送到montage命令的stdin

或者,你可以改变这样的脚本:

#!/bin/bash 
number=0 
for f in *.tif; do 
    convert "$f" -gravity northwest -fill white -annotate +0+0 "$number" miff:- 
    ((number++)) 
done | montage -tile 2x - result.png 

得到

enter image description here

或者,也许这...

#!/bin/bash 
number=0 
for f in *.tif; do 
    convert "$f" -gravity northwest -background gray90 label:"$number" -composite miff:- 
    ((number++)) 
done | montage -tile 2x - result.png 

enter image description here

或用字母......

#!/bin/bash 
number=0 
letters="ABCDEFGHIJKLMNOPQRSTUVWXYZ" 
for f in *.tif; do 
    label=${letters:number:1} 
    convert "$f" -gravity northwest -background gray90 label:"$label" -composite miff:- 
    ((number++)) 
done | montage -tile 2x - result.png 

enter image description here

+0

是的,你的答案真的帮了我。非常感谢您的详细描述。与-composite miff一起使用for循环: - 非常棒。 虽然我找不出两件事:1)如果我完全离开 - backround它使背景白色(与背景白色相同的结果)有没有办法不使用任何背景场? 2)如何设置字体为Times New Roman? -font Times New Roman does not work,neighter does -font Times \ New \ Roman 我的命令如下所示: convert“$ i”-gravity northwest -pointsize 120 label:“$ label”-composite miff: - –

+0

使用'-font'TimesNewRoman“'。 –

+0

试试'-background none' –

2

什么可能性都存在标注单个图像合并?

代替循环。

for INDEX in {A,B,C}; do 
    convert ${INDEX}.jpg labeled_${INDEX}.jpg 
done 

有没有把标签不是画面的下方,但例如在左上角或右下角的选项?

尝试使用-annotate-gravity

convert rose: -fill white \ 
     -gravity NorthWest -annotate +0+0 "A" \ 
     A.png 

A rose

convert rose: -fill white \ 
     -gravity SouthEast -annotate +0+0 "B" \ 
     B.png 

Rose B

相关问题