Spec-Zone .ru
спецификации, руководства, описания, API
Содержание документации
СОДЕРЖАНИЕ | ПРЕДЫДУЩИЙ | NEXT

Передача Задания Печати

Как только у Вас есть Документ и DocPrintJob, можно вызвать метод печати объекта DocPrintJob, чтобы представить документ службе. Передача Задания Печати к разделу Принтера завершает printin пример г. Передача Задания Печати к Потоковому разделу завершает пример потоковой передачи.

Передача Задания Печати к Принтеру

Этот раздел завершает приложение печати, объясненное в этой главе. Этот пример печатает пять копий документа PostScript, двустороннего на листе А4, и сшитый.

       DocFlavor psFlavor = DocFlavor.INPUT_STREAM.POSTSCRIPT;
        PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
        aset.add(new Copies(2));
        aset.add(MediaSizeName.ISO_A4);
        aset.add(Sides.TWO_SIDED_LONG_EDGE);
        aset.add(Finishings.STAPLE);
        PrintService[] pservices = PrintServiceLookup.lookupPrintServices(psFlavor,
                                                        aset);
        if (services.length > 0) {
                DocPrintJob pj = pservices[0].createPrintJob();
                try {
                        FileInputStream fis = new FileInputStream("example.ps");
                        Doc doc = new SimpleDoc(fis, psFlavor, null);
                        pj.print(doc, aset);
                } catch (IOException e) {
                        System.err.println(e);
                } catch (PrintException e) {
                        System.err.println(e);
                }
        }
См. Пример: PrintPS.java для полного приложения.

Передача Задания Печати к Потоку

Этот раздел завершает пример потоковой передачи, объясненный в этой главе. Этот пример преобразовывает документ ДЖИФА PostScript и встраивает указанные атрибуты печати в документ PostScript.

       DocFlavor flavor = DocFlavor.INPUT_STREAM.GIF;
        String psMimeType = DocFlavor.BYTE_ARRAY.POSTSCRIPT.getMimeType();
        PrintRequestAttributeSet aset = new HashPrintRequestAttributeSet();
        aset.add(new Copies(2));
        aset.add(MediaSizeName.ISO_A4);
        aset.add(Sides.TWO_SIDED_LONG_EDGE);
        aset.add(Finishings.STAPLE);
        StreamPrintServiceFactory[] factories =
                StreamPrintServiceFactory.lookupStreamPrintServiceFactories(
                                flavor, psMimeType);
        if(factories.length==0) {
                System.err.println("No suitable factories");
                System.exit(0);
        }
        try {
                FileInputStream fis = new FileInputStream("java2dlogo.gif");
                String filename = "newfile.ps";
                FileOutputStream fos = new FileOutputSteam(filename);
                StreamPrintService sps= factories[0].getPrintService(fos);
                DocPrintJob pj = sps.createPrintJob();
                Doc doc = new SimpleDoc(fos, psFlavor, aset);
                pj.print(doc, aset);
        } catch (IOException e) {
                System.err.println(e);
        } catch (PrintException e) {
                System.err.println(e);
        }
}
См. Пример: PrintGIFtoStream.java для полного приложения.



СОДЕРЖАНИЕ | ПРЕДЫДУЩИЙ | NEXT

Oracle и/или его филиалы Авторское право © 1993, 2011, Oracle и/или его филиалы. Все права защищены.
Свяжитесь с Нами