//---------------------------------------------------------------- ----------------------- Ċ // ĠCopyright Ġ( c ) Ġ 2 0 0 1 - 2 0 1 8 Ġby ĠPDF Tr on ĠSystems ĠInc . ĠAll ĠRights ĠReserved . Ċ // ĠConsult Ġlegal . txt Ġregarding Ġlegal Ġand Ġlicense Ġinformation . Ċ //---------------------------------------------------------------- ----------------------- Ċ Ċ package Ġcom . pdf tron . android . pdf net sdk samples . samples Ċ Ċ import Ġcom . pdf tron . android . pdf net sdk samples . Output Listener Ċ import Ġcom . pdf tron . android . pdf net sdk samples . PDF Net Sample Ċ import Ġcom . pdf tron . android . pdf net sdk samples . R Ċ import Ġcom . pdf tron . android . pdf net sdk samples . util . Utils Ċ import Ġcom . pdf tron . common . Matrix 2 D Ċ import Ġcom . pdf tron . pdf . PDF Doc Ċ import Ġcom . pdf tron . pdf . PDF Draw Ċ import Ġcom . pdf tron . pdf . PDF Raster izer Ċ import Ġcom . pdf tron . pdf . Page Ċ import Ġcom . pdf tron . pdf . Page Iterator Ċ import Ġcom . pdf tron . pdf . Rect Ċ import Ġcom . pdf tron . sdf . Obj Ċ import Ġcom . pdf tron . sdf . Obj Set Ċ Ċ import Ġjava . io . File OutputStream Ċ import Ġjava . nio . ByteBuffer Ċ import Ġjava . nio . Int Buffer Ċ import Ġjava . util . ArrayList Ċ Ċ class ĠPDF Draw Test Ġ: ĠPDF Net Sample () Ġ{ ĊĠĠĠ Ġinit Ġ{ ĊĠĠĠĠĠĠĠ ĠsetTitle ( R . string . sample _ pdf draw _ title ) ĊĠĠĠĠĠĠĠ Ġset Description ( R . string . sample _ pdf draw _ description ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġrun ( output Listener : ĠOutput Listener ?) Ġ{ ĊĠĠĠĠĠĠĠ Ġsuper . run ( output Listener ) ĊĠĠĠĠĠĠĠ Ġm Output Listener Ġ= Ġoutput Listener ĊĠĠĠĠĠĠĠ Ġm FileList . clear () ĊĠĠĠĠĠĠĠ Ġprint Header ( output Listener !! ) ĊĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠThe Ġfirst Ġstep Ġin Ġevery Ġapplication Ġusing ĠPDF Net Ġis Ġto Ġinitialize Ġthe ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġlibrary Ġand Ġset Ġthe Ġpath Ġto Ġcommon ĠPDF Ġresources . ĠThe Ġlibrary Ġis Ġusually ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġinitialized Ġonly Ġonce , Ġbut Ġcalling ĠInitialize () Ġmultiple Ġtimes Ġis Ġalso Ġfine . ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠOptional : ĠSet ĠI CC Ġcolor Ġprofiles Ġto Ġfine Ġtune Ġcolor Ġconversion ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġfor ĠPDF Ġ' device ' Ġcolor Ġspaces ... ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// PDF Net . set Resources Path (" ../../../ resources "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// PDF Net . setColor Management (); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// PDF Net . setDefault Device CM YK Profile (" D :/ Misc / IC C / US Web Co ated SW OP . icc "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// PDF Net . setDefault Device RGB Profile (" A dobe RGB 1 9 9 8 . icc "); Ġ// Ġwill Ġsearch Ġin ĠPDF Net Ġresource Ġfolder . ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ------------------------------------------------ ---- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠOptional : ĠSet Ġpredefined Ġfont Ġmappings Ġto Ġoverride Ġdefault Ġfont ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġsubstitution Ġfor Ġdocuments Ġwith Ġmissing Ġfonts ... ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst (" Stone Sans - Sem ibold ", Ġ" C :/ WINDOWS / Fonts / com ic . ttf "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst (" Stone Sans ", Ġ" com ic . ttf "); Ġ Ġ// Ġsearch Ġfor Ġ' com ic . ttf ' Ġin ĠPDF Net Ġresource Ġfolder . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ Identity , Ġ" C :/ WINDOWS / Fonts / arial uni . ttf "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ J apan 1 , Ġ" C :/ Program ĠFiles / A dobe / Ac ro bat Ġ 7 . 0 / Resource / CID Font / K oz Min Pro VI - Regular . ot f "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ J apan 2 , Ġ" c :/ my fonts / K oz Min Pro VI - Regular . ot f "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ K orea 1 , Ġ" A dobe My ung jo Std - Medium . ot f "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ C NS 1 , Ġ" A dobe Song Std - Light . ot f "); ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠPDF Net . add Font Subst ( PDF Net . e _ GB 1 , Ġ" A dobe M ing Std - Light . ot f "); ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdraw Ġ= ĠPDF Draw () Ġ Ġ// ĠPDF Draw Ġclass Ġis Ġused Ġto Ġraster ize ĠPDF Ġpages . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġhint _ set Ġ= ĠObj Set () ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 1 ) ĠConvert Ġthe Ġfirst Ġpage Ġto ĠPNG Ġand ĠTI FF Ġat Ġ 9 2 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠA Ġthree Ġstep Ġtutorial Ġto Ġconvert ĠPDF Ġpage Ġto Ġan Ġimage . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠA ) ĠOpen Ġthe ĠPDF Ġdocument . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" t iger . pdf ") !!. absolute Path ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġthe Ġsecurity Ġhandler , Ġin Ġcase Ġthe ĠPDF Ġis Ġencrypted . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠB ) ĠThe Ġoutput Ġresolution Ġis Ġset Ġto Ġ 9 2 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 9 2 . 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠC ) ĠR aster ize Ġthe Ġfirst Ġpage Ġin Ġthe Ġdocument Ġand Ġsave Ġthe Ġresult Ġas ĠPNG . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpg Ġ= Ġdoc . getPage ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( pg , ĠUtils . create External File (" t iger _ 9 2 dpi . png "). absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" t iger _ 9 2 dpi . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 1 : Ġt iger _ 9 2 dpi . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExport Ġthe Ġsame Ġpage Ġas ĠTI FF ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( pg , ĠUtils . create External File (" t iger _ 9 2 dpi . tif "). absolute Path , Ġ" TI FF ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" t iger _ 9 2 dpi . tif ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 2 ) ĠConvert Ġthe Ġall Ġpages Ġin Ġa Ġgiven Ġdocument Ġto ĠJPEG Ġat Ġ 7 2 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 2 :") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" newsletter . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġthe Ġsecurity Ġhandler , Ġin Ġcase Ġthe ĠPDF Ġis Ġencrypted . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 7 2 . 0 ) Ġ// ĠSet Ġthe Ġoutput Ġresolution Ġis Ġto Ġ 7 2 ĠD PI . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠUse Ġoptional Ġencoder Ġparameter Ġto Ġspecify ĠJPEG Ġquality . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġencoder _ param Ġ= Ġhint _ set . create Dict () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġencoder _ param . put Number (" Quality ", Ġ 8 0 . 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠTra verse Ġall Ġpages Ġin Ġthe Ġdocument . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġitr Ġ= Ġdoc . page Iterator ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġwhile Ġ( itr . hasNext ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcurrent Ġ= Ġitr . next () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġfilename Ġ= Ġ" newsletter " Ġ+ Ġcurrent !!. getIndex () Ġ+ Ġ". jpg " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println ( filename ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( current , ĠUtils . create External File ( filename ). absolute Path , Ġ" JPEG ", Ġencoder _ param ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . close () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Done .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExamples Ġ 3 - 5 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠCommon Ġcode Ġfor Ġremaining Ġsamples . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġt iger _ doc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" t iger . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġthe Ġsecurity Ġhandler , Ġin Ġcase Ġthe ĠPDF Ġis Ġencrypted . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt iger _ doc . init Security Handler () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpage Ġ= Ġt iger _ doc . page Iterator . next () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 3 ) ĠConvert Ġthe Ġfirst Ġpage Ġto Ġraw Ġbitmap . ĠAlso , Ġrotate Ġthe ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġpage Ġ 9 0 Ġdegrees Ġand Ġsave Ġthe Ġresult Ġas ĠRAW . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 1 0 0 . 0 ) Ġ// ĠSet Ġthe Ġoutput Ġresolution Ġis Ġto Ġ 1 0 0 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Rotate ( Page . e _ 9 0 ) Ġ Ġ// ĠRotate Ġall Ġpages Ġ 9 0 Ġdegrees Ġclock wise . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġcreate Ġa ĠJava Ġimage ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġimage Ġ= Ġdraw . get Bitmap ( page ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġwidth Ġ= Ġimage . width ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġheight Ġ= Ġimage . height ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġarr Ġ= ĠInt Array ( width Ġ* Ġheight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġimage . get Pixels ( arr , Ġ 0 , Ġwidth , Ġ 0 , Ġ 0 , Ġwidth , Ġheight ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġpg . grab Pixels (); ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġconvert Ġto Ġbyte Ġarray ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbyte Buffer Ġ= ĠByteBuffer . allocate ( arr . size Ġ* Ġ 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġint Buffer Ġ= Ġbyte Buffer . as Int Buffer () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġint Buffer . put ( arr ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġraw ByteArray Ġ= Ġbyte Buffer . array () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġfinally Ġwrite Ġthe Ġfile ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġf os Ġ= ĠFileOutputStream ( Utils . create External File (" t iger _ 1 0 0 dpi _ rot 9 0 . raw "). absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġf os . write ( raw ByteArray ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 3 : Ġt iger _ 1 0 0 dpi _ rot 9 0 . raw ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Rotate ( Page . e _ 0 ) Ġ Ġ// ĠDisable Ġimage Ġrotation Ġfor Ġremaining Ġsamples . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 4 ) ĠConvert ĠPDF Ġpage Ġto Ġa Ġfixed Ġimage Ġsize . ĠAlso Ġillustr ates Ġsome ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġother Ġfeatures Ġin ĠPDF Draw Ġclass Ġsuch Ġas Ġrotation , Ġimage Ġstretch ing , Ġexporting ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġto Ġgray scale , Ġor Ġmono chrome . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġrender Ġ' gray _ hint ' Ġparameter , Ġthat Ġis Ġused Ġto Ġcontrol Ġthe ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġrendering Ġprocess . ĠIn Ġthis Ġcase Ġwe Ġtell Ġthe Ġraster izer Ġto Ġexport Ġthe Ġimage Ġas ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 1 ĠBit ĠPer ĠComponent Ġ( B PC ) Ġimage . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġmono _ hint Ġ= Ġhint _ set . create Dict () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmono _ hint . put Number (" B PC ", Ġ 1 . 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSet Image Size Ġcan Ġbe Ġused Ġinstead Ġof ĠSet DPI () Ġto Ġadjust Ġpage Ġ Ġscaling ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġdynamically Ġso Ġthat Ġgiven Ġimage Ġfits Ġinto Ġa Ġbuffer Ġof Ġgiven Ġdimensions . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Size ( 1 0 0 0 , Ġ 1 0 0 0 ) ĠĠĠĠĠĠĠ Ġ// ĠSet Ġthe Ġoutput Ġimage Ġto Ġbe Ġ 1 0 0 0 Ġwide Ġand Ġ 1 0 0 0 Ġpixels Ġt all ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( page , ĠUtils . create External File (" t iger _ 1 0 0 0 x 1 0 0 0 . png "). absolute Path , Ġ" PNG ", Ġmono _ hint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 4 : Ġt iger _ 1 0 0 0 x 1 0 0 0 . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Size ( 2 0 0 , Ġ 4 0 0 ) Ġ// ĠSet Ġthe Ġoutput Ġimage Ġto Ġbe Ġ 2 0 0 Ġwide Ġand Ġ 3 0 0 Ġpixels Ġt all ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Rotate ( Page . e _ 1 8 0 ) Ġ// ĠRotate Ġall Ġpages Ġ 9 0 Ġdegrees Ġclock wise . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ' gray _ hint ' Ġtells Ġthe Ġraster izer Ġto Ġexport Ġthe Ġimage Ġas Ġgray scale . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġgray _ hint Ġ= Ġhint _ set . create Dict () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgray _ hint . put Name (" Color Space ", Ġ" Gray ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( page , ĠUtils . create External File (" t iger _ 2 0 0 x 4 0 0 _ rot 1 8 0 . png "). absolute Path , Ġ" PNG ", Ġgray _ hint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 4 : Ġt iger _ 2 0 0 x 4 0 0 _ rot 1 8 0 . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Size ( 4 0 0 , Ġ 2 0 0 , Ġfalse ) Ġ Ġ// ĠThe Ġthird Ġparameter Ġsets Ġ' preserve - aspect - ratio ' Ġto Ġfalse . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Rotate ( Page . e _ 0 ) ĠĠĠ Ġ// ĠDisable Ġimage Ġrotation . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( page , ĠUtils . create External File (" t iger _ 4 0 0 x 2 0 0 _ stretch . jpg "). absolute Path , Ġ" JPEG ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" t iger _ 4 0 0 x 2 0 0 _ stretch . jpg ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 4 : Ġt iger _ 4 0 0 x 2 0 0 _ stretch . jpg ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 5 ) ĠZoom Ġinto Ġa Ġspecific Ġregion Ġof Ġthe Ġpage Ġand Ġraster ize Ġthe ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġarea Ġat Ġ 2 0 0 ĠD PI Ġand Ġas Ġa Ġthumbnail Ġ( i . e . Ġa Ġ 5 0 x 5 0 Ġpixel Ġimage ). ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġzoom _ rect Ġ= ĠRect ( 2 1 6 . 0 , Ġ 5 2 2 . 0 , Ġ 3 3 0 . 0 , Ġ 6 0 0 . 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġpage !!. set Crop Box ( zoom _ rect ) ĠĠĠ Ġ// ĠSet Ġthe Ġpage Ġcrop Ġbox . ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠSelect Ġthe Ġcrop Ġregion Ġto Ġbe Ġused Ġfor Ġdrawing . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Page Box ( Page . e _ crop ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 9 0 0 . 0 ) Ġ Ġ// ĠSet Ġthe Ġoutput Ġimage Ġresolution Ġto Ġ 9 0 0 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( page , ĠUtils . create External File (" t iger _ zoom _ 9 0 0 dpi . png "). absolute Path , Ġ" PNG ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" t iger _ zoom _ 9 0 0 dpi . png ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 5 : Ġt iger _ zoom _ 9 0 0 dpi . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ---------------------------------------------------------------- --------------- ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 6 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Size ( 5 0 , Ġ 5 0 ) ĠĠĠĠĠĠ Ġ// ĠSet Ġthe Ġthumbnail Ġto Ġbe Ġ 5 0 x 5 0 Ġpixel Ġimage . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( page , ĠUtils . create External File (" t iger _ zoom _ 5 0 x 5 0 . png "). absolute Path , Ġ" PNG ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" t iger _ zoom _ 5 0 x 5 0 . png ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 6 : Ġt iger _ zoom _ 5 0 x 5 0 . png ") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġt iger _ doc . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġc my k _ hint Ġ= Ġhint _ set . create Dict () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġc my k _ hint . put Name (" Color Space ", Ġ" CM YK ") ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 7 ) ĠConvert Ġthe Ġfirst ĠPDF Ġpage Ġto ĠC MY K ĠTI FF Ġat Ġ 9 2 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠA Ġthree Ġstep Ġtutorial Ġto Ġconvert ĠPDF Ġpage Ġto Ġan Ġimage ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠA ) ĠOpen Ġthe ĠPDF Ġdocument . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" t iger . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġthe Ġsecurity Ġhandler , Ġin Ġcase Ġthe ĠPDF Ġis Ġencrypted . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠB ) ĠThe Ġoutput Ġresolution Ġis Ġset Ġto Ġ 9 2 ĠD PI . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 9 2 . 0 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠC ) ĠR aster ize Ġthe Ġfirst Ġpage Ġin Ġthe Ġdocument Ġand Ġsave Ġthe Ġresult Ġas ĠTI FF . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpg Ġ= Ġdoc . getPage ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( pg , ĠUtils . create External File (" out 1 . tif "). absolute Path , Ġ" TI FF ", Ġc my k _ hint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm FileList . add (" out 1 . tif ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 7 : Ġout 1 . tif ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 8 ) ĠPDF Raster izer Ġcan Ġbe Ġused Ġfor Ġmore Ġcomplex Ġrendering Ġtasks , Ġsuch Ġas ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġstrip Ġby Ġstrip Ġor Ġt iled Ġdocument Ġrendering . ĠIn Ġparticular , Ġit Ġis Ġuseful Ġfor ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġcases Ġwhere Ġyou Ġcannot Ġsimply Ġmodify Ġthe Ġpage Ġcrop Ġbox Ġ( interactive Ġviewing , ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġparallel Ġrendering ). Ġ ĠThis Ġexample Ġshows Ġhow Ġyou Ġcan Ġraster ize Ġthe Ġsouth - west ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġquadr ant Ġof Ġa Ġpage . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠA ) ĠOpen Ġthe ĠPDF Ġdocument . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdoc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" t iger . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠInitialize Ġthe Ġsecurity Ġhandler , Ġin Ġcase Ġthe ĠPDF Ġis Ġencrypted . ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠB ) ĠGet Ġthe Ġpage Ġmatrix ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpg Ġ= Ġdoc . getPage ( 1 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbox Ġ= ĠPage . e _ crop ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġmtx Ġ= Ġpg . getDefault Matrix ( true , Ġbox , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠWe Ġwant Ġto Ġrender Ġa Ġquadr ant , Ġso Ġuse Ġhalf Ġof Ġwidth Ġand Ġheight ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpg _ w Ġ= Ġpg . getPage Width ( box ) Ġ/ Ġ 2 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġpg _ h Ġ= Ġpg . getPage Height ( box ) Ġ/ Ġ 2 ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠC ) ĠScale Ġmatrix Ġfrom ĠPDF Ġspace Ġto Ġbuffer Ġspace ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġdpi Ġ= Ġ 9 6 . 0 ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġscale Ġ= Ġdpi Ġ/ Ġ 7 2 . 0 Ġ// ĠPDF Ġspace Ġis Ġ 7 2 Ġdpi ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuf _ w Ġ= ĠMath . floor ( scale Ġ* Ġpg _ w ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuf _ h Ġ= ĠMath . floor ( scale Ġ* Ġpg _ h ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbytes _ per _ pixel Ġ= Ġ 4 Ġ// ĠB GR A Ġbuffer ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmtx . translate ( 0 . 0 , Ġ- pg _ h ) Ġ// Ġtranslate Ġby Ġ'- pg _ h ' Ġsince Ġwe Ġwant Ġsouth - west Ġquadr ant ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmtx Ġ= ĠMatrix 2 D ( scale , Ġ 0 . 0 , Ġ 0 . 0 , Ġscale , Ġ 0 . 0 , Ġ 0 . 0 ). multiply ( mtx ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠD ) ĠR aster ize Ġpage Ġinto Ġmemory Ġbuffer , Ġaccording Ġto Ġour Ġparameters ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġr ast Ġ= ĠPDF Raster izer () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbuf Ġ= Ġr ast . raster ize ( pg , Ġbuf _ w . toInt (), Ġbuf _ h . toInt (), Ġbuf _ w . toInt () Ġ* Ġbytes _ per _ pixel , Ġbytes _ per _ pixel , Ġtrue , Ġmtx , Ġnull ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 8 : ĠSuccessfully Ġraster ized Ġinto Ġmemory Ġbuffer .") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdoc . close () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 9 ) ĠExport Ġraster Ġcontent Ġto ĠPNG Ġusing Ġdifferent Ġimage Ġsmoothing Ġsettings . ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtext _ doc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" lo rem _ ip sum . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtext _ doc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Sm oothing ( false , Ġfalse ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfilename Ġ= Ġ" raster _ text _ no _ smoothing . png " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( text _ doc . page Iterator . next (), ĠUtils . create External File ( filename ). absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 9 Ġa ): Ġ$ filename . ĠDone .") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfilename Ġ= Ġ" raster _ text _ smo ot hed . png " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Sm oothing ( true , Ġfalse Ġ/* default Ġquality Ġb ilinear Ġres ampling */) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( text _ doc . page Iterator . next (), ĠUtils . create External File ( filename ). absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 9 Ġb ): Ġ$ filename . ĠDone .") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfilename Ġ= Ġ" raster _ text _ high _ quality . png " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Sm oothing ( true , Ġtrue Ġ/* high Ġquality Ġarea Ġres ampling */) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( text _ doc . page Iterator . next (), ĠUtils . create External File ( filename ). absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 9 Ġc ): Ġ$ filename . ĠDone .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// -------------------------------------------------------------------------------- ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠExample Ġ 1 0 ) ĠExport Ġsepar ations Ġdirectly , Ġwithout Ġconversion Ġto Ġan Ġoutput Ġcolor space ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġseparation _ doc Ġ= ĠPDF Doc ( Utils . get Asset TempFile ( PDF Net Sample . Companion . INPUT _ PATH Ġ+ Ġ" op _ blend _ test . pdf ") !!. absolute Path ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseparation _ doc . init Security Handler () ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġseparation _ hint Ġ= Ġhint _ set . create Dict () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġseparation _ hint . put Name (" Color Space ", Ġ" Se paration ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set DPI ( 9 6 . 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . setImage Sm oothing ( true , Ġtrue ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġset Ġover print Ġpreview Ġto Ġalways Ġon ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . set Over print ( 1 ) ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvar Ġfilename Ġ= Ġ" merged _ separ ations . png " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( separ ation _ doc . getPage ( 1 ), ĠUtils . create External File ( filename ). absolute Path , Ġ" PNG ") ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 1 0 Ġa ): Ġ$ filename . ĠDone .") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfilename Ġ= Ġ" separ ation " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( separ ation _ doc . getPage ( 1 ), ĠUtils . create External File ( filename ). absolute Path , Ġ" PNG ", Ġseparation _ hint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 1 0 Ġb ): Ġ" Ġ+ Ġfilename Ġ+ Ġ"_ [ ink ]. png . ĠDone .") ĊĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfilename Ġ= Ġ" separ ation _ N Channel . tif " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw . export ( separ ation _ doc . getPage ( 1 ), ĠUtils . create External File ( filename ). absolute Path , Ġ" TI FF ", Ġseparation _ hint ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġm Output Listener !!. println (" Example Ġ 1 0 Ġc ): Ġ$ filename . ĠDone .") ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// ĠCalling ĠTermin ate Ġwhen ĠPDF Net Ġis Ġno Ġlonger Ġin Ġuse Ġis Ġa Ġgood Ġpractice , Ġbut ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġis Ġnot Ġrequired . ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġfor Ġ( file Ġin Ġm FileList ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġadd ToFile List ( file ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġprint Footer ( output Listener ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĊĠĠĠĠĠĠĠ Ġprivate Ġvar Ġm Output Listener : ĠOutput Listener ? Ġ= Ġnull ĊĊĠĠĠĠĠĠĠ Ġprivate Ġval Ġm FileList Ġ= ĠArrayList < String >() ĊĠĠĠ Ġ} Ċ Ċ }