var pdfForm = document.getElementById("pdf");
说明:doPrint是一个数组,里面保存了需要打印的pdf的路径(doPrint修改成你需要打印的pdf文件的路基即可)
for(var i=0;i
之前碰到前端
调用
打印机
的小众需求,看 npm 上面没有类似的库,所以顺便抽取出了
调用
打印机
的库 livelybone/call-printergithub.com实现功能:1. 实现
打印机
调用
2. 快速自定义
打印
内容......难点:1. 对应浏览器 API 是什么?如何使用?2. 确保样式符合预期浏览器核心 APIwindow.print()
js
调用
打印机
的两种方式
直接
调用
window....
pdf
print_cmd是国外的一款批量
pdf
打印
工具,当时使用他的目的是实现物流
打印
快递单,批量快速
打印
,不依赖adobe
直接
打印
,支持多种
文件
格式
打印
,将
PDF
文件
打印
到物理
打印机
,纸张大小可以选择标准纸张或用户定义的纸张,此版本删除水印!花几百美金买的永久版
支持下列格式:
pdf
文档格式[
PDF
]
OpenOffice
文件
[。ODT,OTT,ODG,。。。ODP,ODS ]。
MS Word文档[ .doc .docx,RTF,TXT,XML ]。
MS PowerPoint
文件
[。PPT。pptx,。PPS,格式]。
MS Excel
文件
[。XLS,XLSX,xlsm ]。
HTML
文件
[ .htm,.html,.mht,MHTML ]。
矢量图形格式[。WMF、EMF ]。
图像格式[。BMP,JPG,JPEG,TIF,。。。TIFF,GIF,PNG,ICO ]。
图像格式[。TGA。JP2,J2K,JPC,。。。JPX,PBM、PGM、。。。ppm,PNM ]。
import javax.print.*;
import javax.print.attribute.*;
import javax.print.attribute.standard.*;
public class Print
PDF
{
public static void main(String[] args) throws Exception {
String filename = "example.
pdf
";
// Step 1: use
PDF
renderer to render
PDF
to image
PDF
Renderer renderer = new
PDF
Renderer(new File(filename));
BufferedImage image = renderer.renderImage(0);
// Step 2: print image to printer
PrinterJob job = PrinterJob.getPrinterJob();
PrintService[] services = PrintServiceLookup.lookupPrintServices(null, null);
if (services.length > 0) {
PrintService printService = services[0];
job.setPrintService(printService);
job.setPrintable(new ImagePrintable(job, image));
job.print();
class ImagePrintable implements Printable {
private final double x, y, width;
private final BufferedImage image;
public ImagePrintable(PrinterJob job, BufferedImage image) {
PageFormat pf = job.defaultPage();
this.x = pf.getImageableX();
this.y = pf.getImageableY();
this.width = pf.getImageableWidth();
this.image = image;
public int print(Graphics g, PageFormat pf, int pageIndex) {
if (pageIndex != 0) {
return NO_SUCH_PAGE;
Graphics2D g2d = (Graphics2D) g;
g2d.translate(x, y);
double scaleX = width / image.getWidth();
g2d.scale(scaleX, scaleX);
g2d.drawImage(image, 0, 0, null);
return PAGE_EXISTS;
这个示例代码包含了以下步骤:
1. 使用
PDF
渲染库将指定的
PDF
文件
渲染为图像。
2. 使用Java
打印
库获取可用
打印机
列表并选择第一个
打印机
。
3. 将图像
打印
到
打印机
上。
注意:在运行这个示例代码的时候,需要将
PDF
渲染库和
PDF
文件
的路径替换为实际的路径。
### 回答2:
在Java中,
调用
打印机
打印
PDF
文件
可以通过使用第三方库或者Java内置的类库来实现。
一种常用的方法是使用第三方库,例如Apache
PDF
Box。以下是使用Apache
PDF
Box库进行
PDF
打印
的示例代码:
```java
import org.apache.
pdf
box.pdmodel.PDDocument;
import org.apache.
pdf
box.printing.
PDF
Pageable;
import javax.print.PrintService;
import javax.print.PrintServiceLookup;
import javax.print.attribute.HashPrintRequestAttributeSet;
import javax.print.attribute.PrintRequestAttributeSet;
import javax.print.attribute.standard.Copies;
public class
PDF
Printer {
public static void print
PDF
(String filePath) {
try {
PDDocument document = PDDocument.load(new File(filePath));
PrintService printService = PrintServiceLookup.lookupDefaultPrintService();
PrintRequestAttributeSet attributeSet = new HashPrintRequestAttributeSet();
attributeSet.add(new Copies(1)); // 设定
打印
份数
PrinterJob job = PrinterJob.getPrinterJob();
job.setPageable(new
PDF
Pageable(document));
job.setPrintService(printService);
job.print(attributeSet);
document.close();
} catch (Exception e) {
e.printStackTrace();
public static void main(String[] args) {
String filePath = "path/to/
pdf
/file.
pdf
";
print
PDF
(filePath);
上述代码首先使用
PDF
Box库加载
PDF
文件
,并获取默认的
打印
服务。然后,创建
打印
任务,并设置
打印
参数,例如
打印
份数。最后,将
PDF
文件
作为可
打印
的
页面
,将
打印
服务绑定到
打印
任务上,并执行
打印
操作。
除了使用第三方库外,还可以使用Java内置的类库实现
PDF
打印
。具体方法是使用Java的Desktop类,通过系统默认应用程序打开
PDF
文件
并进行
打印
。以下是使用Desktop类进行
PDF
打印
的示例代码:
```java
import java.awt.Desktop;
import java.io.File;
public class
PDF
Printer {
public static void print
PDF
(String filePath) {
try {
Desktop desktop = Desktop.getDesktop();
desktop.print(new File(filePath));
} catch (Exception e) {
e.printStackTrace();
public static void main(String[] args) {
String filePath = "path/to/
pdf
/file.
pdf
";
print
PDF
(filePath);
上述代码中,我们首先获取系统默认的桌面,然后使用桌面的print方法来
打印
PDF
文件
。请确保系统已配置默认的
PDF
应用程序,否则
打印
功能可能无法正常工作。
无论是使用第三方库还是Java内置类库,以上两种方法都能实现Java
调用
打印机
打印
PDF
文件
的功能。
### 回答3:
Java
调用
打印机
打印
PDF
可以通过使用Java Print API来完成。Java Print API提供了一种在Java程序中与
打印机
进行交互的方式。
首先,我们需要确保计算机已经安装了合适的
PDF
打印机
驱动程序。例如,Adobe Acrobat Reader通常会安装一个虚拟
打印机
驱动程序。
然后,我们可以使用Java的PrintServiceLookup类来获取可用的
打印机
列表,并选择需要的
打印机
。
接下来,我们可以使用
PDF
Box等Java库来加载和处理
PDF
文件
。
PDF
Box是一个开源库,可以用于处理
PDF
文件
,包括读取、创建和
打印
PDF
文件
。
在加载了
PDF
文件
后,我们可以使用PrinterJob类来创建
打印
作业。PrinterJob类提供了各种方法来设置
打印
作业的属性,例如
打印机
、纸张类型、
页面
方向和
打印
份数等。
一旦设置完
打印
作业的属性,我们可以
调用
PrinterJob的print方法来进行实际的
打印
操作。这将会将
PDF
文件
发送给选择的
打印机
进行
打印
。
如果需要更复杂的
打印
操作,例如
打印
页面
范围或设置
打印
监听器,我们可以进一步使用PrintRequestAttributeSet和PrintService等类来实现。
总之,通过Java Print API和适当的
打印机
驱动程序,我们可以方便地使用Java
调用
打印机
打印
PDF
文件
。
我是菜鸡但我不服:
java将多个pdf文件合并成一个pdf文件
da鹏鹏:
java将多个pdf文件合并成一个pdf文件
火舞旋风@:
java将多个pdf文件合并成一个pdf文件
da鹏鹏: