英文:
Imagemagick - Getting the usable dimension of an image
问题
我有一个进程,它基于一些参数使用convert(ImageMagick)创建文件,然后检查文件并返回具有实际像素的最大尺寸。
命令如下:
convert -size 5000x5000 xc:white -font {font} -pointsize {size} -fill black -draw "{some_occassional_additional_parameter}text 200,2500 \"{text}\"" {some_other_occassional_additional_parameter}{temporary_file}
convert {temporary_file}.png -trim +repage -format "%[w]x%[h]\n" info:
它将产生类似于:526x425的结果。
这个进程每天运行50万次,似乎是一个巨大的瓶颈。我正在寻找一个可以在内存中完成的解决方案,不需要总是创建文件并检查它,而是以某种方式在内存中执行它。
如果能加速它,就像提高50%的速度,那将是一个巨大的成就。
谢谢!
英文:
I've a process which is creating a file with convert (ImageMagick) based on some parameter, and after that it checks the file and gives back the biggest dimension of it which has real pixels.
The commands look like this:
convert -size 5000x5000 xc:white -font {font} -pointsize {size} -fill black -draw "{some_occassional_additional_parameter}text 200,2500 \"{text}\"" {some_other_occassional_additional_parameter}{temporary_file}
convert {temporary_file}.png -trim +repage -format "%[w]x%[h]\n" info:
. It'll result something like: 526x425
This process runs half a million time per day, and it seems to be a huge bottleneck. I'm looking for a solution which can done this in memory, so not always creating a file and check it, but do it in memory somehow.
If can speed it up just like 50%, that'd be a huge achievement.
Thank You
答案1
得分: 0
将您的第一个命令更改为:
convert -size ... xc:... occasionalstuff -format "%@" info:
请注意,您可以,而且可能应该,对"%@"
进行双引号引用,特别是如果您使用包含对shell具有重要意义的字符的表达式,尽管在这种特定情况下,这并不是绝对必要的。
英文:
Not at a computer to test, but change your first command to:
convert -size ... xc:... occasionalstuff -format "%@" info:
Note that you can, and probably should double quote the "%@"
especially if you use expressions containing characters of significance to the shell, though it is not strictly necessary in this specific case.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论