Я работаю с веб-приложением ColdFusion, которое берет загруженное изображение и изменяет его размер 4 раза, используя ImageMagick. Я пытаюсь добавить, чтобы применить некоторое условное форматирование к нему, и код работает через командную строку, но он не работает правильно через приложение CF.
Вот код, который отправляется на сервер из CF (и прекрасно работает в командной строке):
C:\path\cmd.exe /S /C ""C:\path\ImageMagick\magick.exe" "C:\path\800x77.jpg" -resize 600x600 -strip -quality 85 -gravity center -background white -extent "%[fx:w^<250?250:w]x%[fx:h^<250?250:h]" "C:\path\result600x250.jpg""
Символы каретки служат для того, чтобы избежать знаков меньше, но, похоже, они нарушают форматирование ImageMagick, поскольку IM возвращает изображение, обрезанное до 250x250, а не 600x250. Любые идеи о том, как я могу заставить его работать правильно, когда CF запускает его?
ImageMagick 7, CF2016, Центр обработки данных Windows Server 2008 R2
EDIT:
Код не использует cfexecute. Я добавил двойные кавычки в код, добавляемый в код оболочки, и это приближает меня. Вот строка, генерирующая эту часть кода для сценария оболочки:
<cfset local.shellArguments &= ' -gravity center -background white -extent ""%[fx:w\^<#arguments.argResizeMinWidth#?#arguments.argResizeMinWidth#:w]x%[fx:h\^<#arguments.argResizeMinHeight#?#arguments.argResizeMinHeight#:h]""'>