在Java中,可以使用打印服務類(PrintService)來調用打印機進行打印操作。以下是一個簡單的示例代碼:
import java.awt.print.PrinterJob;
import java.awt.print.PrinterException;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.DocPrintJob;
import javax.print.SimpleDoc;
import javax.print.DocFlavor;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
import javax.print.attribute.standard.MediaSizeName;
public class Printer {
public static void main(String[] args) throws PrinterException {
// 獲取默認打印機
PrintService service = PrintServiceLookup.lookupDefaultPrintService();
// 創建打印作業
PrinterJob job = PrinterJob.getPrinterJob();
job.setPrintService(service);
// 創建打印請求屬性集
PrintRequestAttributeSet attributes = new HashPrintRequestAttributeSet();
attributes.add(MediaSizeName.ISO_A4);
// 創建打印文檔
String text = "Hello, World!";
byte[] bytes = text.getBytes();
DocFlavor flavor = DocFlavor.BYTE_ARRAY.AUTOSENSE;
SimpleDoc doc = new SimpleDoc(bytes, flavor, null);
// 開始打印
DocPrintJob printJob = service.createPrintJob();
printJob.print(doc, attributes);
}
}
在這個示例中,我們首先通過PrintServiceLookup.lookupDefaultPrintService()
方法獲取默認打印機,然后創建打印作業(PrinterJob)并設置打印服務。接著創建打印請求屬性集(PrintRequestAttributeSet)并指定紙張大小為A4。然后創建打印文檔(SimpleDoc)并指定打印內容為"Hello, World!"。最后通過打印服務創建打印作業并進行打印操作。
需要注意的是,這只是一個簡單的示例代碼,實際應用中可能需要更多的配置和處理。另外,由于Java打印API相對復雜,建議查閱Java官方文檔或其他資源以獲取更多相關信息。