import java.io.*;
import javax.print.*;
import javax.print.attribute.*;
import javax.print.attribute.standard.*;
public class Print{
public void drawImage(String fileName, int count){
try {
DocFlavor dof = null;
if(fileName.endsWith(".gif")){
dof = DocFlavor.INPUT_STREAM.GIF;
}else if(fileName.endsWith(".jpg")){
dof = DocFlavor.INPUT_STREAM.JPEG;
}else if(fileName.endsWith(".png")){
dof = DocFlavor.INPUT_STREAM.PNG;
}
PrintService ps = PrintServiceLookup.lookupDefaultPrintService();
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
pras.add(OrientationRequested.PORTRAIT);
pras.add(new Copies(count));
pras.add(PrintQuality.HIGH);
DocAttributeSet das = new HashDocAttributeSet();
das.add(new MediaPrintableArea(0, 0, 4, 6, MediaPrintableArea.INCH));
FileInputStream fin = new FileInputStream(fileName);
Doc doc = new SimpleDoc(fin ,dof, das);
DocPrintJob job = ps.createPrintJob();
job.print(doc, pras);
fin.close();
}
catch (IOException ie) {
ie.printStackTrace();
}
catch (PrintException pe) {
pe.printStackTrace();
}
}
public static void main(String args[]){
Print print=new Print();
print.drawImage("f:/12121212.jpg",2);
}
}
java调用window系统打印机打印图片
最新推荐文章于 2025-09-17 11:50:58 发布
本文介绍如何使用Java打印图片,包括导入必要的包、处理不同类型的图片文件(如GIF、JPEG、PNG),设置打印属性(如页面方向、副本数量、打印质量),以及创建打印文档和打印作业的过程。
814

被折叠的 条评论
为什么被折叠?



