10/8/2003 iPDF 2.0.4 All platforms Initial public release Compiled to V4R4M0. 10/12/2003 iPDF 22.214.171.124 iSeries PXSETUPC: /ipdf had *PUBLIC *RX access only. Changed to *RWX. All platforms Changed watermark to "www.inFORMDecisions.com". All platforms Temporary memory deallocation provided for with class MemoryMgr. All platforms Text processing in onePass mode optimized. 10/20/2003 iPDF 2.0.5 All platforms Miscellaneous bug fixes pertaining to text placment. Adaptive compression algorithm implemented. iSeries External license key implemented. iSeries Output file moved to correct location with MOV rather than QSHELL command. 10/27/2003 iPDF 126.96.36.199 iSeries iDocs interface simplified and rewritten. All platforms Trace statements in playback executing when not tracing. Fixed. appendDataStringsElement() added. 10/28/2003 iPDF 188.8.131.52 All platforms Fixed rounding errors that impacted GL2 lines and boxes. 11/18/2003 iPDF 2.0.7 All platforms Fixed errors pertaining box fill in GL2. 11/20/2003 iPDF 2.0.8 All platforms Fixed font size errors. 11/20/2003 iPDF 2.0.9 All platforms Fixed ESC &l to provide for form feed. iPDF 2.1.0 All platforms Implemented configuration file ipdf.cfg. ESC &l now configurable. Reworked font selection logic. 12/3/2003 iPDF 2.1.1 All platforms Fixes for rectangle fill color, (ESC*C), and soft font processing of spaces. Fixed --fontSub option for Marigold font. 12/4/2003 iPDF 184.108.40.206 All platforms Fixed memory allocation failure encountered when working with macros of zero length. 12/5/2003 iPDF 2.1.2 All platforms Fixed character omission error in processing soft fonts. 12/9/2003 iPDF 2.1.3 All platforms Fixed pattern length issue in line drawing in GL2. Fixed missing border in filled area in ESC *C processing when processing two passes. PXSETUPC now deletes existing /ipdf directory before restoring. Leading blanks in configuration file ipdf.cfg now discarded before intrepreting line. Unexpected EOF during 2nd pass of two pass processing now not cause program abend. 12/10/2003 iPDF 220.127.116.11 iSeries Added instructions to ignore an error that occurs when IPDFSETUP is run on a new installation. No code change from 2.1.3. 12/11/2003 iPDF 18.104.22.168 All platforms Fixed font type selection when using condensed fonts. Fixed error message in PCSETUPC generated by existing /ipdf directory created in 2.1.3. 12/31/2003 iPDF 2.1.4 All platforms Fixed GL2 fill issue with bounding lines. Requires two passes. iSeries Added --match option to ipdf.cfg to provide for two passes on a file the name of which matches the specified pattern. iSeries Pxsetupc (setup program) now executes a CD '/' before starting setup. Windows First public release. 1/13/2004 iPDF 22.214.171.124 Windows Added minimize button to main dialog. Moved to Accel Technologies. First public release of DLL and GUI. System root taken from environment variable %windir% - now works on Windows 98. Now traps unrecognized pcl sequences and issues warning messages at top level opcode parsing. Default output file put in dialog upon selection of input file using browse button. 2/3/2004 iPDF 126.96.36.199 All platforms Default cursor position set to 0 for x and PageHeight - 12 for y. Default page type remains 2 - letter. Paper src commands cause new page only for ESC&l0H or if the pageEjectOnPaperSrc option is set. This release was missing the executable IPDF440 for the iSeries. 2/4/2003 iPDF 188.8.131.52 All platforms macroAssignMacro() no longer crashes when assigning a macro of zero length. 2/9/2004 Windows Added license register function. Added setCurrentDirectory() to DLL api. Error messages displayed in list box rather than edit box. Dialogs set in property page context. License key installed. iPDF 184.108.40.206 All platforms Fixed issue unable to convert pcl numeric value of zero to double value. Windows Added pageEjectOnPrtReset option. 2/11/2004 iPDF 2.1.5 All platforms changed processing of top margin points in esAstc() to fix text placing issue. Default font COURIER selected if fontSpacing === 0. iPDF 2.1.6 Windows specifyPageSize() option added to iPDF.dll. 2/20/2004 iPDF 2.1.6 All platforms fixed issue involving top margin lines and top margin points. page parameters reset on all ESC &lh opcodes. 2/27/04 iPDF 220.127.116.11. All platforms Trapped divide by zero error resulting from 0 pattern length. iSeries iPDF command created to invoke pxconvert. Windows Implemented forcePageSize option. 3/10/2004 iPDF 2.1.8 All platforms Implemented gl opcode AA, arcs. 3/11/2004 iPDF 2.1.9 All platforms Implemented rotate print direction, ESC &ap. iSeries Added --pageEjectOnPrtSrc and --pageEjectOnPrtReset options. 3/26/2004 iPDF 2.1.10 iSeries & Windows ESC *vt - select current pattern - revised. iSeries --twopass option. ESC &ar - vertical cursor position in rows - implemented. 4/19/2004 iPDF 2.2.0 iSeries Reimplementation of many GL2 opcodes as part of implementation of certain GL2 fill matters. GL2 Edge Absolute implemented as separate object when using --onepass feature. 4/19/2004 iPDF 18.104.22.168 iSeries Fixed failure to locate TAXLDRAW and OCR A font. Fixed program abend when processing unterminated macro definition at end of file. 4/22/2004 iPDF 22.214.171.124 iSeries When ESC *c#p is invoked with a horizontal or vertical distance <= 0, opcode is skipped. 4/22/2004 iPDF 126.96.36.199 iSeries ESC &a#H when processing in --onepass mode now generates an x value reset. 5/12/2004 iPDF 188.8.131.52 iSeries Line Printer font now processed as Courier New. 5/13/2004 iPDF 184.108.40.206 iSeries Added --enforceMargins option to forgo writing text that starts outside the top and left margins. Fixed ESC &ac: absolute position of x coordinate calculation previously excluded left logical margin. 5/17/2004 iPDF 220.127.116.11 iSeries Converter properly handles trailing blanks after an improperly terminated escape sequence. 07/02/2004 iPDF 18.104.22.168 iSeries Rotate text ESC &aP now opens a page if the page is not open. 07/07/2004 iPDF 2.2.2 iSeries Fix issues pertaining to Ezprint. Enforce non-printable margin. Optional enforcement added in 22.214.171.124 removed. 07/25/2004 iPDF 126.96.36.199 iSeries Fix rounding error in ESC &f0S. 07/28/2004 iPDF 2.2.3 iSeries Scalable fonts mapped to fixed fonts. 07/28/2004 iPDF 2.2.4 iSeries Fixes distorted letters. 07/28/2004 iPDF 2.2.5 iSeries Refine pcl/pjl mode toggle. 08/01/2004 iPDF 2.2.6 iSeries Fixed RunLengthDecomp() iSeries substring issue. All platforms Symbol set 15U, character 0x6c is mapped to taxldraw charcter 0x66. "checkbox". 08/03/2004 IPDF 2.2.7 iSeries Wingdings substituted for taxldraw in alteration made for 2.2.6. Product ID shows as 2.2.6 in PDF document. 09/04/2004 iPDF 188.8.131.52 iSeries Implment --supEndBlkPag option to suppress the last page if it contains nothing but blanks and unprintable characters. Its use implies use on --onepass option. 09/11/2004 iPDF 184.108.40.206 iSeries Create the command IPDFCHECK that displays the program version and checks the license key. 09/27/2004 iPDF 220.127.116.11 iSeries ESC &l0H, when using the --onepass option, will cause a new page if the number of stored text items > 0. 01/07/2005 iPDF 2.3.0 iSeries LPAR keys. Fixed orientation issue with soft fonts. Fixed broken soft font image issue. PXSETUP will now only use QSH if the command STRQSH is present. 02/11/2005 iPDF 2.3.1 iSeries Program IPDF440 now opens files with specified paths, then changes the current directory to /ipdf so that it can find the fonts. 02/16/2005 iPDF 2.3.2 iSeries Font names and font files stored in code page 37. SearchPath set for PDFLib to include default fonts directory. 03/02/2005 iPDF 2.3.3 Rerelease of Windows version under different architecture. Implementation of page size over ride for both versions. 03/../2005 iPDF 18.104.22.168 Windows Windows specific alterations. 03/12/2005 iPDF 22.214.171.124 both font directory is now a variable that can be set from the command line. 03/16/2005 iPDF 126.96.36.199 Windows Fixed command line processing issue so that iPDFExec.exe can be run from the command line, i.e. bypass the GUI. 03/18/2005 iPDF 2.4.0 both fixed gl2 opcode LB to handle unprintable characters. 03/20/2005 iPDF 2.4.1 both extension of 2.4.0. 04/28/20005 iPDF 188.8.131.52 both Fix release. Code cleanup. Replaced fprintf() and printf() with custom functions to control fflush(). iSeries --fontdir parameter added to ipdf.cfg. Pxconvert now launches the converter using system() rather than calling a function with OS linkage. 06/03/2005 iPDF 184.108.40.206 both Integer array size increased to intended size. 06/22/2005 iPDF 2.4.3 both Modified processing of gl2 opcode RA to handle opaque backgrounds. iSeries Qp0zLprintf() used to write output to the job log instead of stdout and stderr. Fixed bug in GL2 opcode Fill Rectangle Absolute (RA) that under specific circumstances caused the rectangle position to be too high. Fixed bug in GL2 opcode Label (LB) that caused the font to be to small when running in onepass mode. 10/25/05 iPDF 2.4.4 both Fixed issue in GL opcode PU pertaining to move type. 10/25/05 iPDF 2.4.5 both Fixed in gl opcode PD move type issue. Also removed in ESC *c processing test for if processing opaque pattern. GL2 line type defaults to true. 11/01/05 iPDF 2.4.6 both Reversed changes made in 2.4.4. Made some font table changes. 04/01/06 iPDF 2.4.7 iSeries Added support for run length encoded raster as generated by the iDocs tiff2pcl api. 05/02/06 iPDF 2.4.7a iSeries Added SCS2PDF and CPYSCSPDF commands, both of which convert SCS spool files with pcl opcodes to pdf. 08/10/06 iPDF 2.4.8 iSeries Expanded spool file number in module PXR9800 from 5 char to 6. Renamed PXCONVERT program to CPYPCLPDF. Documents converted with this release identify as iPDF 2.4.7. (Probably) first release at V5R1. 08/23/06 iPDF 2.4.9 iSeries Fixed bug in rle encoded image processing that was corrupting the output. New page not opened if page not first closed. Program IPDF440 renamed IPDF. Program PXCONVERT renamed CPYPCLPDF. 08/29/06 iPDF 2.4.10 iSeries Trapped iDocs call error with spool file nummber = character 000J. Error messages from CPYPCLPDF how go to the job log and not standard error. MRGRUN command added to permit copying iPDF run objects into another library. 10/08/06 iPDF 2.4.11 iSeries --topmarginlines permitting the top margin lines specified as a float (decimal) value added. 11/02/06 iPDF 2.4.12 iSeries Fixed issue with opaque pattern being incorrectly handled during onepass. Fixed rounding when calculating pcl cursor y position during *b#Y opcode. Changed handling of top margin lines in execute macro processing. 12/01/06 iPDF 2.4.14 iSeries IPDFCHECK command removed. Use: call IPDF parm('--check') Input printer file now opened before output PDF. Page width and height now default to global values in startPage(); 01/09/07 iPDF 2.4.15 iSeries Removed processing of pattern opaque opcode. 01/31/07 iPDF 2.4.16 iSeries At end of macro any text remaining to be printed is as a part of macro processing. FontHeight calculation bug fixed. Impacts calculation of hmi. GL2 pen position calculated separately from pcl pen position and result is returned to pcl pen upon exit from gl2 mode. GL2 pen position pushed / popped to/from stack in polygon mode. SCS2PDF has additional parameter to control addition of formatting pcl commands to *SCS spool file contents. 02/20/07 iPDF 2.4.17 iSeries Text rendered invisible by specification of the text color the same as the background color is now provided for. 03/12/07 iPDF 2.4.18 Windows iPDFExec now flushes stderr after each error message. No iSeries release of 2.4.18. 07/02/07 iPDF 2.4.19 System i Spool file number validation fixed on CPYPCLPDF command. IPDF command is now a duplicate of CPYPCLPDF. Obsolete commands PXCONVERT and CPYSCSPDF removed from library. True Type font file now specified from a file map text file. Two new optional parameters to converter: --fontMapTable --condFontMapTable First release using *IFS64IO. Converter now handles incorrectly terminated ESC &f3x opcode issued by some releases of iDocs. 09/04/07 iPDF 2.4.20 System i SCS2PDF: fixed bad pointer in call to delete. Added option --supBlkPag, which suppresses blank page output except the last page. Added the --offset option. 01/04/08 iPDF 2.4.21 SCS2PDF: Fixed the use of Qp0zLprintf() Refer to the temporary pcl file with an absolute reference rather than relative. Implemented symbolset / character code mapping. GENERAL: Added more logging. Added STRIPDF command and end-user spool file / command interface. 04/07/08 iPDF 3.0 Trapping of failed call to GetValue() due to incorrectly terminated PCL sequences implemented throughout mapeseq.cpp. CPYPCLPDF high level process completely rewritten. --match option now works with all configuration commands in ipdf.cfg. Inclusion of the STRIPDF end user interface. Inclusion of the IPDFMON outqueue monitor. First release at V5R2. GETASCSPLF: splf *LAST issue fixed to accommodate internal use of -1. January 2009 iPDF 3.01 Fix release presently under alpha distribution on a need basis. GETASCSPLF: command parameter IFSNAMELENGTH set to 100 bytes length in program to match command parameter length. iPDF: PrintText() function altered to process text strings of length greater than 8191 bytes. This length is the maximum that PDFLib will process. First release with namespace std universal. April 2010 iPDF 4.0 (largely marked as 3.01 in code base) Release has full capability with large files > 2GB. Image compression method change in mid-image issue fixed when compression method at image start is run length encoding. CPYPCLFILE command to process ascii pcl file from IFS and optionally process all the pcl files in a directory concatenating the result into one pdf document new with this release. All macros explicitly cleared at printer reset. SCS2PDF re-implemented. Prior version preserved as SCS2PDF2.