Adobe Photoshop
To illustrate how one can convert a TIFF document image to the JPEG2000 format using JavaScript, the following is a script that opens Photoshop, takes the uncompressed Peacock test file (10.0MB) and saves it using JPEG2000 lossless compression:
// =======================================================
var idOpn = charIDToTypeID( "Opn " );
var desc1 = new ActionDescriptor();
var idnull = charIDToTypeID( "null" );
desc1.putPath( idnull, new File( "D:\\adieux\\archive\\tiff\\adieux-ocr-testfile-1.tif" ) );
executeAction( idOpn, desc1, DialogModes.NO );
// =======================================================
var idsave = charIDToTypeID( "save" );
var desc2 = new ActionDescriptor();
var idAs = charIDToTypeID( "As " );
var desc3 = new ActionDescriptor();
var idJPLS = charIDToTypeID( "JPLS" );
desc3.putBoolean( idJPLS, false );
var idJPFM = charIDToTypeID( "JPFM" );
desc3.putBoolean( idJPFM, false );
var idJPMD = charIDToTypeID( "JPMD" );
desc3.putBoolean( idJPMD, true );
var idJPTP = charIDToTypeID( "JPTP" );
desc3.putBoolean( idJPTP, false );
var idJPJC = charIDToTypeID( "JPJC" );
desc3.putBoolean( idJPJC, true );
var idJPEH = charIDToTypeID( "JPEH" );
desc3.putInteger( idJPEH, 50 );
var idJPPO = charIDToTypeID( "JPPO" );
desc3.putInteger( idJPPO, 0 );
var idJPCS = charIDToTypeID( "JPCS" );
desc3.putBoolean( idJPCS, false );
var idJPWF = charIDToTypeID( "JPWF" );
desc3.putInteger( idJPWF, 0 );
var idJPTS = charIDToTypeID( "JPTS" );
desc3.putInteger( idJPTS, 3 );
var idJPJX = charIDToTypeID( "JPJX" );
desc3.putBoolean( idJPJX, false );
var idJPXM = charIDToTypeID( "JPXM" );
desc3.putBoolean( idJPXM, true );
var idJPEX = charIDToTypeID( "JPEX" );
desc3.putBoolean( idJPEX, true );
var idJPIP = charIDToTypeID( "JPIP" );
desc3.putBoolean( idJPIP, true );
var idJPRP = charIDToTypeID( "JPRP" );
desc3.putBoolean( idJPRP, true );
var idJPEV = charIDToTypeID( "JPEV" );
desc3.putInteger( idJPEV, 16 );
var idJPIS = charIDToTypeID( "JPIS" );
desc3.putInteger( idJPIS, 1 );
var idJPRS = charIDToTypeID( "JPRS" );
desc3.putInteger( idJPRS, 1 );
var idJPEGtwozerozerozero = stringIDToTypeID( " JPEG 2000" );
desc2.putObject( idAs, idJPEGtwozerozerozero, desc3 );
var idIn = charIDToTypeID( "In " );
desc2.putPath( idIn, new File( "D:\\adieux\\archive\\jpf" ) );
executeAction( idsave, desc2, DialogModes.NO );
// =======================================================
var idCls = charIDToTypeID( "Cls " );
executeAction( idCls, undefined, DialogModes.NO );
The resulting JPEG2000 file (5.63MB) is available here (note: this cannot be displayed in most browsers without plug-in support, but it can be downloaded).
As long as the JPEG2000 plug-in is installed, this script should work on any document image specified in the first block.
Continued  |