| Here is an alternate command-line user interface for the IJG JPEG software. |
| It is designed for use under MS-DOS, and may also be useful on other non-Unix |
| operating systems. (For that matter, this code works fine on Unix, but the |
| standard command-line syntax is better on Unix because it is pipe-friendly.) |
| |
| With this user interface, cjpeg and djpeg accept multiple input file names |
| on the command line; output file names are generated by substituting |
| appropriate extensions. The user is prompted before any already-existing |
| file will be overwritten. See usage.alt for details. |
| |
| Expansion of wild-card file specifications is useful but is not directly |
| provided by this code. Most DOS C compilers have the ability to do wild-card |
| expansion "behind the scenes", and we rely on that feature. On other systems, |
| the shell may do it for you, as is done on Unix. |
| |
| Also, a DOS-specific routine is provided to determine available memory; |
| this makes the -maxmemory switch unnecessary except in unusual cases. |
| If you know how to determine available memory on a different system, |
| you can easily add the necessary code. (And please send it along to |
| jpeg-info@uunet.uu.net so we can include it in future releases!) |
| |
| |
| INSTALLATION |
| ============ |
| |
| You need to have the main IJG JPEG distribution, release 6 or later. |
| Replace the standard cjpeg.c and djpeg.c files with the ones provided here. |
| Then build the software as described in the main distribution's install.doc |
| file, with these exceptions: |
| |
| * Define PROGRESS_REPORT in jconfig.h if you want the percent-done display. |
| * Define NO_OVERWRITE_CHECK if you *don't* want overwrite confirmation. |
| * You may ignore the USE_SETMODE and TWO_FILE_COMMANDLINE symbols discussed |
| in install.doc; these files do not use them. |
| * As given, djpeg.c defaults to GIF output (not PPM output as in the standard |
| djpeg.c). If you want something different, modify DEFAULT_FMT. |
| |
| You may also need to do something special to enable filename wild-card |
| expansion, assuming your compiler has that capability at all. |
| |
| Modify the standard usage.doc file as described in usage.alt. (If you want |
| to use the Unix-style manual pages cjpeg.1 and djpeg.1, better fix them too.) |
| |
| |
| Here are some specific notes for popular MS-DOS compilers: |
| |
| Borland C: |
| Add "-DMSDOS" to CFLAGS to enable use of the DOS memory determination code. |
| Link with the standard library file WILDARGS.OBJ to get wild-card expansion. |
| |
| Microsoft C: |
| Add "-DMSDOS" to CFLAGS to enable use of the DOS memory determination code. |
| Link with the standard library file SETARGV.OBJ to get wild-card expansion. |
| In the versions I've used, you must also add /NOE to the linker switches to |
| avoid a duplicate-symbol error from including SETARGV. |
| |
| DJGPP (we recommend version 2.0 or later): |
| Add "-DFREE_MEM_ESTIMATE=0" to CFLAGS. Wild-card expansion is automatic. |
| |
| |
| LEGAL ISSUES |
| ============ |
| |
| This software is copyright (C) 1991-1998, Thomas G. Lane. |
| Terms of distribution and use are the same as for the free IJG JPEG software; |
| see its README file for details. |
| |
| The authors make NO WARRANTY or representation, either express or implied, |
| with respect to this software, its quality, accuracy, merchantability, or |
| fitness for a particular purpose. This software is provided "AS IS", and you, |
| its user, assume the entire risk as to its quality and accuracy. |