package javaio;
import java.io.*;
import javax.print.*;
import javax.print.attribute.*;
import javax.print.attribute.standard.*;
public class PrintImage
{
public PrintImage(String filename)
{
try
{
//获得打印属性
PrintRequestAttributeSet pras =
new HashPrintRequestAttributeSet();
pras.add(new Copies(1));
//获得打印设备
PrintService pss[] =
PrintServiceLookup.lookupPrintServices(
DocFlavor.INPUT_STREAM.GIF,
pras);
if (pss.length == 0)
throw new RuntimeException
("No printer services available.");
PrintService ps = pss[0];
System.out.println("Printing to " + ps);
//获得打印工作
DocPrintJob job = ps.createPrintJob();
FileInputStream fin = new FileInputStream(filename);
Doc doc =
new SimpleDoc(
fin,
DocFlavor.INPUT_STREAM.GIF,
null);
//开始打印
job.print(doc, pras);
fin.close();
}
catch (IOException ie)
{
ie.printStackTrace();
}
catch (PrintException pe)
{
pe.printStackTrace();
}
}
public static void main(String args[]) throws Exception
{
if (args.length < 1)
{
System.err.println(
"Usage: java PrintImage <image name>");
System.exit(1);
}
new PrintImage(args[0]);
}
}
import java.io.*;
import javax.print.*;
import javax.print.attribute.*;
import javax.print.attribute.standard.*;
public class PrintImage
{
public PrintImage(String filename)
{
try
{
//获得打印属性
PrintRequestAttributeSet pras =
new HashPrintRequestAttributeSet();
pras.add(new Copies(1));
//获得打印设备
PrintService pss[] =
PrintServiceLookup.lookupPrintServices(
DocFlavor.INPUT_STREAM.GIF,
pras);
if (pss.length == 0)
throw new RuntimeException
("No printer services available.");
PrintService ps = pss[0];
System.out.println("Printing to " + ps);
//获得打印工作
DocPrintJob job = ps.createPrintJob();
FileInputStream fin = new FileInputStream(filename);
Doc doc =
new SimpleDoc(
fin,
DocFlavor.INPUT_STREAM.GIF,
null);
//开始打印
job.print(doc, pras);
fin.close();
}
catch (IOException ie)
{
ie.printStackTrace();
}
catch (PrintException pe)
{
pe.printStackTrace();
}
}
public static void main(String args[]) throws Exception
{
if (args.length < 1)
{
System.err.println(
"Usage: java PrintImage <image name>");
System.exit(1);
}
new PrintImage(args[0]);
}
}
本文提供了一个使用Java实现打印GIF格式图片的示例代码。该程序通过查找可用的打印服务并设置打印属性来完成打印任务。用户需指定待打印的图片文件名。
1426

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



