使用Irfanview从文本文件批量创建图像?

Sag*_*ean 1 image-processing batch-processing irfanview

我有一个包含相关ID号的数千个文本字符串的文件.我想获取每个不同的文本字符串并使其成为文本的JPG图像,并使用相关的ID号命名文件.

所有字符串最多为75个字符,因此我不需要担心图像的动态调整大小以补偿更长的字符串.我只想设置一个图像大小.

我使用Irfanview来满足大多数批量成像需求,并且考虑到它的灵活性,我认为有一种方法可以做到这一点.有谁知道如何做到这一点?

Mar*_*ell 5

我不相信Irfanview可以做到这一点 - 尽管我没有太多使用过那个程序.这里列出 Irfanview的命令行选项,没有提到我能看到的label,text或者annotate.

我只能推荐ImageMagick,它是免费的,适用于Linux,OSX和Windows.

如果您的输入文件被调用IdAndText.txt,看起来像这样:

id123456:Some text
id987654:Some different text, and a comma
id111222:Yet more stuff
Run Code Online (Sandbox Code Playgroud)

然后你可以运行这样的东西

#!/bin/bash
while IFS=":" read id text; do
   convert -size 1000x250 xc:black -fill yellow -pointsize 36 -gravity center -draw "text 0,0 '$text'" $id.png
done < IdAndText.txt
Run Code Online (Sandbox Code Playgroud)

你会得到这个

id123456.png

在此输入图像描述

id987654.png 在此输入图像描述

id111222.png

在此输入图像描述

有一种疯狂的Windows-y方式来阅读文本文件,我可以尝试并报告,但ImageMagick部分在Windows中大致相同.

在Windows中它是这样的:

FOR /F "delims=: tokens=1,*" %%A IN (IdAndText.txt) DO convert -size 1000x250 xc:black -fill yellow -pointsize 36 -gravity center -draw "text 0,0 '%%B'" %%A.png
Run Code Online (Sandbox Code Playgroud)