2020年11月19日星期四

Java 打印Excel工作表

示例要点

本文介绍如何通过Java程序打印Excel工作表。可通过以下方法打印:

  1. 默认打印机打印
  2. 指定打印机打印

 

程序环境

  • spire.xls.jar
  • JDK版本要求1.6.0及以上的高版本
  • IDEA

 

Jar文件导入

方法1:手动下载jar包导入。下载jar包,并解压到指定路径,将该路径下lib文件夹下的jar文件导入java程序;

方法2Maven程序中配置pom.

<repositories> <repository>  <id>com.e-iceblue</id>  <url></url>  </repository></repositories><dependencies><dependency>  <groupId>e-iceblue</groupId> <artifactId>spire.xls</artifactId> <version>3.11.2</version></dependency></dependencies>

完成配置后,导入jar。Eclipse中的导入方法可参考教程文档

jar导入效果图:

 

Java代码

1. 默认打印机打印

import com.spire.xls.*;import java.awt.print.PageFormat;import java.awt.print.Paper;import java.awt.print.PrinterException;import java.awt.print.PrinterJob;public class Print { public static void main(String[] args) {  //加载excel工作簿  Workbook workbook = new Workbook();  workbook.loadFromFile("test.xlsx");  //创建 PrinterJob对象  PrinterJob printerJob = PrinterJob.getPrinterJob();  //指定打印页面为默认大小和方向  PageFormat pageFormat = printerJob.defaultPage();  //设置相关打印选项  Paper paper = pageFormat.getPaper();  paper.setImageableArea(0, 0, pageFormat.getWidth(), pageFormat.getHeight());  pageFormat.setPaper(paper);  printerJob.setCopies(1);  printerJob.setPrintable(workbook, pageFormat);  //执行打印  try {   printerJob.print();  } catch (PrinterException e) {   e.printStackTrace();  } }}

 

2. 指定打印机打印

import com.spire.xls.*;import javax.print.PrintService;import java.awt.print.PageFormat;import java.awt.print.Paper;import java.awt.print.PrinterException;import java.awt.print.PrinterJob;public class Print { public static void main(String[] args) throws Exception {  //加载excel工作表  Workbook workbook = new Workbook();  workbook.loadFromFile("test.xlsx");  //创建 PrinterJob对象  PrinterJob printerJob = PrinterJob.getPrinterJob();  //指定打印机  PrintService myPrintService = findPrintService("\\\\192.168.1.104\\HP LaserJet P1007");  printerJob.setPrintService( myPrintService);  //指定打印页面为默认大小和方向  PageFormat pageFormat = printerJob.defaultPage();  //设置相关打印选项  Paper paper = pageFormat.getPaper();  paper.setImageableArea(0, 0, pageFormat.getWidth(), pageFormat.getHeight());  pageFormat.setPaper(paper);  printerJob.setCopies(1);  printerJob.setPrintable(workbook, pageFormat);  //执行打印  try {   printerJob.print();  } catch (PrinterException e) {   e.printStackTrace();  } } //通过打印机名称获取打印服务 private static PrintService findPrintService(String printerName) {  PrintService[] printServices = PrinterJob.lookupPrintServices();  for (PrintService printService : printServices) {   if (printService.getName().equals(printerName)) {    return printService;   }  }  return null; }}

 

推荐阅读:

1. Java 打印Word

   Java打印Word文档 (1)

   Java打印Word文档 (2)

2. Java 打印PDF

 

原文转载:http://www.shaoqun.com/a/490512.html

黄劲:https://www.ikjzd.com/w/2426

gtin:https://www.ikjzd.com/w/136

巴克莱银行:https://www.ikjzd.com/w/2775


示例要点本文介绍如何通过Java程序打印Excel工作表。可通过以下方法打印:默认打印机打印指定打印机打印程序环境spire.xls.jarJDK版本要求1.6.0及以上的高版本IDEAJar文件导入方法1:手动下载jar包导入。下载jar包,并解压到指定路径,将该路径下lib文件夹下的jar文件导入java程序;方法2:Maven程序中配置pom.<repositories><
旺店通:旺店通
走秀网:走秀网
souq平台:souq平台
Wish相关其他问题:Wish相关其他问题
海南的海底漫步有年龄限制吗?:海南的海底漫步有年龄限制吗?

没有评论:

发表评论