Send reply to:          [EMAIL PROTECTED]
Date sent:              Thu, 03 Jun 2004 14:42:37 +0200
From:                   Rudy RENTSCH <[EMAIL PROTECTED]>
To:                     [EMAIL PROTECTED]
Subject:                How can i do to print directly in a embedded FOP 
application?

> Hi,
> 
> I've an application which uses JPanel, and I embedded FOP to have the 
> possibility to print information contained in a frame.
> I followed the code provided in your example called 
> "ExampleObj2PDF.java", and I manage to transform informations in a PDF 
> file. But in the beggining, i'd like to print these information 
> directly, without generating a PDF file.
> The problem is if I specify Driver.RENDER_PRINT when I set the renderer 
> of the Driver ( by this command : 
> "driver.setRenderer(Driver.RENDER_PRINT);" ), then I obtain an error 
> indicating :
> "IllegalArgumentException : Use renderer form of setRenderer() for PRINT"
> which is normal in according to the class Driver. But if I use the 
> method "setRenderer(Renderer renderer)", I can't put a PrintRenderer 
> like parameter (abstract class)...
> Can you help me please, telling me how can I do to specify that I want a 
>   printed output?
> 
> Thanks.
> 
> Rudy
>
     Hi,

        with this function 'use_fop_prt' i can print directly to my 
standardprinter,
        but sometimes the result look a bit different to a generated PDF-file.  
        The 'fileSource' is the fo-file that was produced frpm the xml and 
xls-File
        a step before.
 
        private void use_fop_prt(String fileSrc)
        throws FileNotFoundException, IOException, FOPException
        {
                File source;
                PrinterJob pj; 
                int copies;
                AWTRenderer renderer;
          
                File UserConfigFile = new File("fop/conf/userconfig.xml");
                Options op = new Options(UserConfigFile);
          
                source = new File (fileSrc);
                pj = PrinterJob.getPrinterJob(); 
                copies =  1;
                renderer = new AWTRenderer(pj);                
                pj.setCopies(copies);
                Configuration.put("baseDir", 
                        new 
File(source.getAbsolutePath()).getParentFile().toURL().toExternalForm());       
   
          
                Driver driver = new Driver(new InputSource(fileSrc), null);     
     
                Logger logger = new ConsoleLogger(ConsoleLogger.LEVEL_INFO);
                MessageHandler.setScreenLogger(logger);          
                driver.setLogger(logger);
                driver.setRenderer(renderer);
                driver.run();
     }  

        Hope this helps a bit
        Ralf


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to