Podemos usar este comando para rotular cada imagem pelo seu nome:
montage -label '%t' -size 512x512 "./img/*.*[120x90]" -geometry +5+5 photo.png
Eu quero rotular imagens por lista de strings, que é escrita em um arquivo de texto. Os documentos dizem :
If the first character of string is @, the image label is read from a
file titled by the remaining characters in the string. Labels in a
file are literal, no embedded formatting characters are recognized.
Mas não consegui usar um arquivo para fornecer um rótulo. Eu uso um comando como este:
montage -label @un.txt -size 512x512 "./img/*.*[120x90]" -geometry +5+5 photo.png
Acima, un.txt
é o nome do arquivo de texto em ./img/
caminho. Este é um resultado de amostra:
Comoresultado,todasasimagensmarcadaspelastring@un.txt
,emvezdoconteúdodeun.txt
.Tambémreceboesteerroemterminal
:
montage.im6:improperimageheader'./img/un.txt'@error/txt.c/ReadTXTImage/429
Seeucopiarun.txt
paraodiretórioatual(.
)eexecutarocomandoacimanovamente,obtenhoestaimagem(nãohárótulo)eabaixodoerro:
montage.im6: improper image header './img/un.txt' @
error/txt.c/ReadTXTImage/429.
montage.im6: not authorized '@un.txt' @
error/property.c/InterpretImageProperties/2959.