В папке [WhereEver]\ImageMagick-6.7.4-Q16\ImageMagickObject\Tests
вы найдете два примера скриптов (ArrayTest.vbs, SimpleTest.vbs).Наиболее важная информация из второго:
' The argument list is exactly the same as the utility programs
' as a list of strings. In fact you should just be able to
' copy and past - do simple editing and it will work. See the
' other samples for more elaborate command sequences and the
' documentation for the utility programs for more details.
'
msgs = img.Convert("logo:","-format","%m,%h,%w","info:")
Таким образом, передача всех параметров в одном массиве так же неверна, как и попытка установить свойства.Я использовал вывод
Dim sSrcFSpec : sSrcFSpec = "..\data\logo.jpg"
Dim sDstFSpec : sDstFSpec = "..\data\logo.png"
If goFS.FileExists(sDstFSpec) Then goFS.DeleteFile sDstFSpec
CreateObject("ImageMagickObject.MagickImage.1").convert "-verbose", sSrcFSpec, sDstFSpec
If Not goFS.FileExists(sDstFSpec) Then WScript.Echo "Failure!"
:
..\data\logo.jpg JPEG 123x118 123x118+0+0 8-bit DirectClass 16.2KB 0.000u 0:00.006
..\data\logo.jpg=>..\data\logo.png JPEG 123x118 123x118+0+0 8-bit DirectClass 0.030u 0:00.
083
, который доказывает, что вы получите результаты, если передадите разумные аргументы.Я попробовал нечто похожее на ваш тестовый код -
convert -verbose -size 100x100 -font arial -label blah ..\data\example.gif
и получил:
convert.exe: missing an image filename `..\data\example.gif' @ error/convert.c/ConvertImag
eCommand/3016.
Ничего не зная об ImageMagick, я могу только предположить, что такие аргументы предполагают существующий входной файл.
Так что проводите тестирование COM, когда вы проверили параметры из командной строки.