При попытке использовать команды ImageMagick пользователи столкнулись с трудностями при их выполнении в окнах Powershell. Команды без проблем выполняются в окнах cmd. Попытки решить проблему добавлением обратной косой черты перед круглыми скобками также не увенчались успехом. Расследования показывают, что директива Magick действительно включена в переменные среды.
Несмотря на невозможность запуска сложных команд в Powershell, простые команды выполняются без проблем. Это говорит о том, что проблема связана именно со сложными командами.
ImageMagick предлагает широкий спектр опций и функций, что требует пристального внимания к кавычкам и экранированию при выполнение команд в различных средах, включая:
Bash:
magick IMAGE1.PNG \ \( IMAGE2.PNG -resize 50% -fill '#ff0000' -colorize 100% \) \ -composite -transparent 'hsl(40,50,60)' result.png
Windows CMD32:
magick IMAGE1.PNG ^ ( IMAGE2.PNG -resize 50%% -fill "#ff0000" -colorize 100% ) ^ -composite -transparent "hsl(40,50,60)" result.png
Powershell:
magick IMAGE1.PNG ` `( IMAGE2.PNG -resize 50% -fill "#ff0000" -colorize 100% `) ` -composite -transparent "hsl(40,50,60)" result.png
Чтобы избежать потенциальных проблем, возникающих из-за синтаксических ограничений, специфичных для среды, независимый от платформы подход предполагает использование сценариев. Команды могут содержаться в файле с расширением «.mgk», и ImageMagick может выполнять их напрямую, минуя необходимость интерпретации оболочки и проблем с кавычками:
script.mgk:
-size 640x480 xc:#ffff00 ( foreground.png -resize 50% ) -gravity center -composite -write result.png
Вызов:
magick -script script.mgk
При использовании этой техники оболочка остается не зависит от символов и символов, используемых в сценарии, что обеспечивает плавное выполнение в различных средах.
Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.
Copyright© 2022 湘ICP备2022001581号-3