1. 程式人生 > >java實現的打印機打印2

java實現的打印機打印2

arr 類型 數據表 OS 條件 tst java 想要 ras

		//設置打印屬性 										構造一個新的空打印請求屬性集。					
		PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
		pras.add(new Copies(3));//打印份數,3份
		
		//設置打印數據的格式						DocFlavor.BYTE_ARRAY.PNG     MIME 類型 = "image/png",打印數據表示形式類名 = "[B"(byte 數組)的 DocFlavor。
		DocFlavor flavor = DocFlavor.BYTE_ARRAY.PNG;
		
		//創建打印數據
		Doc myDoc = new SimpleDoc(new File(""), flavor, null);  
		
		//查找所有符合條件的打印服務  						lookupPrintServices(flavor, pras);查找能夠打印指定 DocFlavor 的 PrintService。 
		PrintService[] printService = PrintServiceLookup.lookupPrintServices(flavor, pras);

		//將所有查找出來的打印機與自己想要的打印機進行匹配,找出自己想要的打印機  
	    LookUpPrint p=new LookUpPrint();
	    PrintService myPrintService = p.GetPrintService("printName");
	    
	     //可以輸出打印機的各項屬性  
	    AttributeSet att = myPrintService.getAttributes();  
	    for (Attribute a : att.toArray()) {  
            System.out.println("attributeName:"+a.getName()+ "     attributeValue:" +  att.get(a.getClass()).toString());  
        } 
	    
	    
        if (myPrintService != null) {  
            DocPrintJob job = myPrintService.createPrintJob();//創建文檔打印作業  
            try {  
                job.print(myDoc, pras);//打印文檔  
            } catch (Exception pe) {  
                pe.printStackTrace();  
            }  
        }else{
            System.out.println("no printer services found");
        }  
        

  

java實現的打印機打印2