Silvio,
did You test this ?
viewtopic.php?f=3&t=22254&p=118453&hilit=image+converter#p118453NCONVERT
========
Nconvert is the multi-format commandline image converter for Win32, DOS, OS/2, and other platforms.
Type "nconvert -help" for available options.
Type "nconvert -help > nchelp.txt" to save the help text into the file "nchelp.txt".
To convert files to a specific format, type for example :
nconvert -out 5 file1.pic file2.jpg file3.tga
or
nconvert -out tiff file1.pic file2.jpg file3.tga
With a resize :
nconvert -out jpeg -ratio -resize 480 0 *.jpg
nconvert -out jpeg -resize 640 480 *.jpg
The input format is not necessary, it will be autodetected. If a problem occurs, use the -in option.
Nconvert is able to transform images while converting:
* To convert GIF files to JPEG files :
nconvert -out jpeg -truecolors *.gif
* To convert JPEG files to GIF files :
nconvert -out gif -dither -colors 256 *.jpeg
* To resize :
nconvert -out png -resize 510 230 *.jpeg
nconvert -out png -ratio -resize 510 0 *.jpeg
nconvert -out png -ratio -resize 0 510 *.jpeg
nconvert -out png -resize 200% 200% *.jpeg
You can use it with images sequences.
For example, to convert the files file00.pic, file01.pic, ..., file10.pic and
we convert to jpeg format with the name pattern res0.jpg, res1.jpg, ... type :
nconvert -out jpeg -n 1 10 1 -o res#.jpg file##.pic
You can use % to specify source filename in dest filename.
For example, nconvert -out jpeg -o result_%.jpg file.tga
creates a file named result_file.jpg
Note for windows users: in batch files you must write %% instead of %. To bypass this problem, you can use a nconvert script instead of a batch file.
You can control nconvert with a script, performing multiple sets of conversions on multiple sets of files, example:
### -out png -rtype lanczos -resize 200% 150%
screenshot1.bmp
screenshot2.bmp
screenshot3.bmp
### -out gif -rtype lanczos -resize 500% 500% -oil 10 -colours 32
F:\icons\smile.bmp
### -out bmp -rtype lanczos -resize 30% 30% -oil 2 -rotate_flag smooth -rotate 45
selfportrait.png
mydog.png
Save this into a text file, for example "nc.txt", and then run nconvert with this file as the only parameter: "nconvert nc.txt" .
Limitations:
Add text feature uses the Win32 API and is avaiable on Win32 only.
Some exotical image formats use external DLL's and are available on Win32 only.
When using a script file, avoid multiple spaces in the conversion definitions, they confuse the parser.
Converting huge images, or scaling up to a huge size requires much memory and may not always work.
The convert section from the tool :
- Code: Select all Expand view
FUNCTION MAKE_FILE()
cStyle := "Image FORMAT"
// cOrgFile := cNewBITM, ;
// cWorkfile := c_path + "\Images\" + cOnlyName + "_P." + cExtension
// cNewfile := c_path + "\Images\_" + cOnlyName + "." + cExpExten
// NConvert -o E:\T_NCONVERT\Images\_OLGA.DIB -out dib -overwrite E:\T_NCONVERT\Images\OLGA.JPG
// NConvert -o E:\T_NCONVERT\Images\_OLGA.PDF -out pdf -overwrite E:\T_NCONVERT\Images\OLGA.JPG
IF LOWER(cFileExt( cWorkfile )) <> LOWER(cExpExten)
IF FILE( cWorkfile )
cNewfile := c_path + "\Images\" + cOnlyName + "_F." + cExtension
cScript1 := '-quiet -o ' + cNewfile + ' -out ' + LOWER(cExpExten) + ' -overwrite ' + cWorkfile
cScript := "// Format-Convert SCRIPT" + CRLF + CRLF + ;
"cIN_File := " + cWorkfile + CRLF + ;
"cOUT_File := " + cNewfile + CRLF + CRLF + ;
'cScript := " -quiet -o " + cOUT_File + " -out ' + LOWER(cExpExten) + ' -overwrite " + cIN_File' + CRLF + CRLF + ;
'WAITRUN ( "NConvert " + cScript, 0 )'
WAITRUN ( "NConvert " + cScript1, 0 )
IF FILE( cNewfile )
SAVE_IMAGE()
ELSE
MsgAlert( "The File : " + CRLF + ;
cNewfile + CRLF + ;
"is not created !!!", "ERROR")
ENDIF
ENDIF
ELSE
MsgAlert( "Export to same Format : " + cExtension + CRLF + ;
"not possible !", "Export-Error" )
ENDIF
RETURN ( NIL )
Best Regards
Uwe