The igconsole sample program demonstrates how to load an image in one format and convert it to another format.
Usage: igconsole [options]
where [Options] may include any of the following:
-i[page number] <input file>
-o[page number] <output file>
-e <Component name>
-f <output format ID>
-p <list all possible output formats ID's>
-v <display version numbers>
This topic provides information about the command-line parameters of this program and the corresponding ImageGear API calls which implement the requested functionality.
-
Load the specified page from the multi-page image:
-i[nIPageNumber] < IFileName >
The sample uses the IG_fltr_load_file() function to load the specified page from the multi-page image and associate it with the hIGear handle:
nErrCount=IG_fltr_load_file(IFileName, nIPageNumber, &hIGear);
-
Set the output format value using the command-line parameters. Save the already-loaded hIGear image into OFileName as nOPageNumber-th page:
-f nFormat
-o[nOPageNumber] OFileName
The sample uses the IG_fltr_save_file() function to save the already-loaded hIGear image in the format of the nFormat parameter value:
nErrCount=IG_fltr_save_file(hIGear, OFileName, nFormat, nOPageNumber, FALSE);
The nFormat value is an integer constant taken from ImageGear’s master include file accucnst.h.
-
Get a list of all possible output formats:
-p
This command returns a list of all currently available output formats by:
<format_id>:<Format_name>.<Compression_name>
The contents of the list depend upon the component that is attached (refer to Component Manager API). For example, if the LZW component is loaded, then the GIF/LZW format is available for use and will appear in the list.
The sample uses the IG_fltr_savelist_get function to obtain the list of output formats, and then calls the IG_fltr_info_get function in a loop to obtain information on each output format.
Please see the igconsole.c source file for the code that implements this feature.
-
Return the list of all possible output formats for a given image:
-i[nIPageNumber] < IFileName >
This loads the nIPageNumber page of an IFileName file and then returns a list of all available output formats to which the loaded image can be saved.
The sample uses the IG_fltr_savelist_get function to obtain the list of output formats, and then calls the IG_fltr_info_get function in a loop to obtain information on each output format.
Please see the igconsole.c source file for the code that implements this feature.
-
Attach a component:
-e component_filename
The sample uses IG_comm_comp_attach to attach a component:
nErrCount=IG_comm_comp_attach(component_filename);
The following example loads the second page from a mydocument.pdf document and saves it to a JPEG file:
igconsole -e libIGPDF.so -i2 mydocument.pdf -f 393237 -o tiff6_p2.jpg
The following example converts the first page of the input document to BMP format:
char *argv[]
HIGEAR hIGear;/* ImageGear image handle */
AT_ERRCOUNTnErrCount;/* Number of errors that occurred */
...
/* Load the image in argv[1] */
nErrCount = IG_fltr_load_file(argv[1], 1, &hIGear);
if (nErrCount)
{
ErrorReport(nErrCount);
exit(1);
}
/* Save the image as a BMP in argv[2] */
nErrCount = IG_fltr_save_file(hIGear, argv[2], IG_FORMAT_BMP, 0,
FALSE );
if (nErrCount)
{
ErrorReport(nErrCount);
exit(1);
}
...