在项目中引入jpd.jar,示例代码如下:
import java.awt.Color;
import java.awt.Font;
import java.awt.Graphics;
import java.awt.print.PageFormat;
import java.awt.print.Printable;
import java.awt.print.PrinterException;
/**
* 打印示例
*/
public class PrintDemo implements Printable {
private static final long serialVersionUID = 1L;
/**
* printable接口实现
*/
public int print(Graphics g, PageFormat pageFormat, int pageIndex) throws PrinterException {
if (pageIndex < 9) {
g.setColor(Color.BLUE);
g.setFont(new Font("Tahoma", Font.ITALIC, 10));
g.drawString("http://www.hgsql.com", 20, 50);
g.setColor(Color.ORANGE);
g.setFont(new Font("Tahoma", Font.PLAIN, 100));
g.drawString("第" + (pageIndex + 1) + "页", 20, 150);
return Printable.PAGE_EXISTS;
} else {
return Printable.NO_SUCH_PAGE;
}
}
}
import javax.print.DocFlavor;
import javax.print.PrintException;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.ServiceUI;
import javax.print.SimpleDoc;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
/**
* 虚拟打印机
* @author wanghg
*/
public class VPrinter {
/**
* @param args
*/
public static void main(String[] args) {
//声明JPD虚拟打印机
try {
Class.forName("com.hg.jpd.JpdPrintService");
} catch (ClassNotFoundException e1) {
e1.printStackTrace();
}
// 构建打印请求属性集
PrintRequestAttributeSet pras = new HashPrintRequestAttributeSet();
// 设置打印格式
DocFlavor flavor = DocFlavor.SERVICE_FORMATTED.PRINTABLE;
// 查找所有的可用打印服务
PrintService printService[] = PrintServiceLookup.lookupPrintServices(flavor, pras);
// 定位默认的打印服务
PrintService defaultService = PrintServiceLookup.lookupDefaultPrintService();
if (defaultService != null) {
PrintService service = ServiceUI.printDialog(null, 200, 200,
printService, defaultService, flavor, pras);
if (service != null) {
try {
service.createPrintJob().print(new SimpleDoc(new PrintDemo(), flavor, null), pras);
} catch (PrintException e) {
e.printStackTrace();
}
}
}
}
}
- 大小: 11.5 KB
分享到:
相关推荐
虚拟打印机,可以帮你更好的预览打印效果,有需要的朋友可以下载
虚拟打印机.开发用非常好虚拟打印机.开发人员用 C# java c++ vc PB
VirtualPrinter.v1.0.Source.Code.ccrun.360181.rar 虚拟打印机源码
SVG格式转PDF(java实现)-附件资源
达内培训tarena内部资料tts教学系统课件pdf版 培训教学系统的java课件可以看下 java的 使用SmartPrinter虚拟打印机打印成pdf文件 很全有目录 我也刚开始学习java 有谁有C++或者其它课程的么 求共享 谢谢
达内培训tarena内部资料tts教学系统课件pdf版 培训教学系统的java课件可以看下 java的 使用SmartPrinter虚拟打印机打印成pdf文件 很全有目录 我也刚开始学习java 有谁有C++或者其它课程的么 求共享 谢谢
这是本人使用的非常著名的虚拟打印机软件。经典的软件,不用多说。网上很流行 这里面有两个版本。都经过测试正常使用。似乎低版本效果更好些。但是后来一LODOP作者建议我使用:虚拟打印机Bullzip PDF Printer,下载...
Java实现局域网内两点文件传输,接收端收到doc,docx,pdf类型的文件后自动调用虚拟打印机接口,实现打印pdf文件的功能。其中包括实现的原理,以及操作实现的源代码、实现的步骤、每一实现步骤对应的讲解,包括代码...
LPD(行式打印机守护进程)协议的 Java 和 C# 实现,由 UNIX 打印普及,现在被许多用于网络打印。 它捕获发送给它的所有打印作业,并允许用户在打印前修改它们。 查看主页
dopdf虚拟打印机+jdguiJava反编译工具+socket通信工具 都是用起来很方便的工具
虚拟打印机开发时可以在端口截获raw文件; 然后可以将raw文件打印至其他打印机。 SDK函数的调用序列为: OpenPrinter-->StartDocPrinter-->StartPagePrinter-->WritePrinter-->EndPagePrinter-->...
操作各种office ...程序说明: 1、Java2Word是操作word的工具...2、WordToPdf是使用Adobe Reader虚拟打印机实现打印word。 3、使用jacob技术调用2007自带的word转pdf工具,WordToPdfOffice2007是使用office2007的另存功能
达内培训tarena内部资料tts教学系统课件pdf版 培训教学系统的java课件可以看下 java的 使用SmartPrinter虚拟打印机打印成pdf文件 很全有目录 我也刚开始学习java 有谁有C++或者其它课程的么 求共享 谢谢
SP00LING输出进程工作时,根据请求块记录的各进程要输出的信息,将其实际输出到打印机或显示器。这里,SP00LING输出进程与请求输出的用户进程可并发运行。 (1)功能分析 当输入“第一个用户进程的请求为:”,“第...
pdf合并 、打印、pdf转图片,word2pdf 基于pdfbox的二次开发,实现将多个pdf文件合并成一个pdf,word转换成pdf,pdf转化成图片,pdf文件的后台打印,相当于虚拟打印机
虚拟打印机, 上传office格式的文件到 /convert/ 目录下会自动对上传的文档进行转换成网页格式并自动保存到指定的目录。支持多 consumer_key/consumer_secret 池, 可以突破每天五千次的API调用次数
LinkOS-Android-样本-PDF打印重要提示:在使用之前,请仔细阅读最终用户许可_
原因是,导出到HPGL的程序(例如虚拟打印机)输出的行是任意的,而根本不是逻辑输出的,因此,与雕刻本身相比,雕刻机在行之间跳过的时间更长。 这实际上是beta版本,仅执行基本功能-简单视图,简单优化,简单导出...