pdfbox-users mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Kuindersma <mkuin...@rogers.com>
Subject Printing on Windows - Set Job Owner Name?
Date Mon, 06 Feb 2012 21:23:13 GMT
I'm using PDFBox-1.6.0 on Windows XP SP3 with Sun JRE 1.6.0_24.


The following code fragment prints the target PDF and the job shows up in 
the Windows print queue with the proper Document Name but the Owner 
field shows the userID of the User that launches the program, not the 
text I requested "Requesting User Name".

Is there a way to get what I want?  Am I doing it wrong?


        PDDocument pdDoc = null;
        try
        {
            pdDoc = PDDocument.load( "C:\\automatic-heap-sizing.pdf"
 );
            
            PrinterJob printerJob = PrinterJob.getPrinterJob();
            


            PrintService printService = null;
            PrintService[] printServices = PrinterJob.lookupPrintServices();

            for( PrintService tPS : printServices )
            {
                if( tPS.getName().equals( "Samsung ML-4550 Series PCL 6" )
)
                {
                    printService = tPS;
                    break;
                }
            }

           
 if( printService == null )
            {
                System.out.println( "Unable to locate specified PrintService
- cannot print!" );
            }
            else
            {
                printerJob.setPrintService( printService );
                
                printerJob.setJobName( "automatic-heap-sizing.pdf" );
                
                PrintRequestAttributeSet as = new HashPrintRequestAttributeSet();
                as.add( new RequestingUserName( "Requesting User Name", Locale.getDefault()
) );
                
                printerJob.setPageable( new PDPageable( pdDoc, printerJob )
);
                
                printerJob.print( as );
            }
        }
       
 catch( IOException ioe )
        {
            System.out.println( "Caught IOException: " + ioe.getClass().getName()
+ " - " + ioe.getMessage() );
        }
        catch( PrinterException pe )
        {
            System.out.println( "Caught PrinterException: " + pe.getClass().getName()
+ " - " + pe.getMessage() );
        }
        catch( Throwable t )
        {
            System.out.println( "Caught Throwable: " + t.getClass().getName() +
" - " + t.getMessage() );
       
 }
        finally
        {
            if( pdDoc != null )
            {
                try
                {
                    pdDoc.close();
                }
                catch( Throwable t )
               
 {
                    System.out.println( "Caught Throwable: " + t.getClass().getName()
+ " - " + t.getMessage() );
                }
            }
        }



Regards,
Mike Kuindersmamkuinder _at_ rogers.com
Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message