大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

專注Java教育14年 全國咨詢/投訴熱線:400-8080-105
動力節點LOGO圖
始于2009,口口相傳的Java黃埔軍校
首頁 學習攻略 Java學習 Java調用打印機的步驟

Java調用打印機的步驟

更新時間:2022-04-21 11:16:06 來源:動力節點 瀏覽5957次

Java調用打印機的步驟是怎樣的?動力節點小編來告訴大家。

Java調用打印機的步驟

1.獲取PrinterJob

一般都用PrinterJob.lookupPrintServices()來獲取本地配置的打印機列表

    public static PrinterJob getPrintServiceByName(String printerName) throws Exception{
        PrinterJob job = PrinterJob.getPrinterJob();
        // 遍歷查詢打印機名稱
        boolean flag = false;
        for (PrintService ps : PrinterJob.lookupPrintServices()) {
            String psName = ps.toString();
            // 選用指定打印機,需要精確查詢打印機就用equals,模糊查詢用contains
            if (psName.contains(printerName)) {
                flag = true;
                job.setPrintService(ps);
                break;
            }
        }
        if(!flag){
            throw new RuntimeException("打印失敗,未找到名稱為" + printerName + "的打印機,請檢查。");
        }
        return job;
    }

2.設置PrinterJob紙張樣式

    public static void setPageStyle(PDDocument document, PrinterJob job) {
        job.setPageable(new PDFPageable(document));
        Paper paper = new Paper();
        int width = 215;
        int height = 170;
        // 設置打印紙張大小
        paper.setSize(width,height); // 1/72 inch
        // 設置邊距,單位是像素,10mm邊距,對應 28px
        int marginLeft = 1;
        int marginRight = 0;
        int marginTop = 10;
        int marginBottom = 0;
        // 設置打印位置 坐標
        paper.setImageableArea(marginLeft, marginRight, width - (marginLeft + marginRight), height - (marginTop + marginBottom));
        // custom page format
        PageFormat pageFormat = new PageFormat();
        pageFormat.setPaper(paper);
        // override the page format
        Book book = new Book();
        // append all pages 設置一些屬性 是否縮放 打印張數等
        book.append(new PDFPrintable(document, Scaling.ACTUAL_SIZE), pageFormat, 1);
        job.setPageable(book);
    }

3.打印PDF

	public static PDDocument printPdf(String pdfPath, String printerName) throws Exception {
        File file = new File(pdfPath);
        PDDocument document = PDDocument.load(file);
        PrinterJob job = getPrintServiceByName(printerName);
        setPageStyle(document, job);
        // 開始打印
        job.print();
        return document;
    }

 

提交申請后,顧問老師會電話與您溝通安排學習

免費課程推薦 >>
技術文檔推薦 >>
主站蜘蛛池模板: 888米奇色狠狠俺去啦 | 国内精品福利在线视频 | 99久久爱re热6在播放 | 日日摸狠狠的摸夜夜摸 | 一 级 黄 色蝶 片 | 青青草国产免费一区二区 | 欧美一级性视频 | 天堂一区二区三区精品 | 国产乱码精品一区二区三上 | 波多野结衣中文丝袜字幕 | 色丁香六月 | 欧美亚洲另类色国产综合 | 毛片黄| 99爱视频免费高清在线观看 | 妇女bbw奶水bbw | 美女视频黄a视频免费全过程在线 | 日韩精品亚洲一级在线观看 | 成年人午夜影院 | 免费刺激性视频大片区 | 69做爰视频在线观看 | 在线人成精品免费视频 | 成人嫩草研究院永久网址 | 天天干人人干 | 黄色直接观看 | 成人午夜视频在线观看 | 第一国内永久免费福利视频 | 国产精品欧美日韩一区二区 | 在线国产区 | 欧美精品久久久久久久免费观看 | 久久99精品久久久久久黑人 | 理论毛片| 一区二区国产在线观看 | 九九99香蕉在线视频网站 | 91精品国产视频 | 亚洲综合精品香蕉久久网 | 久久国产精品亚洲一区二区 | 久青草国产手机在线观 | 久热99这里只有精品视频6 | 欧美亚洲综合图区在线 | 日韩免费不卡视频 | 一区亚洲 |