Как напечатать Execl в Java

Печать документов Excel позволяет обмениваться информацией, анализировать данные в автономном режиме или представлять их в натуральном виде на совещаниях или презентациях. Независимо от того, нужно ли вам распечатать всю рабочую книгу, конкретные рабочие листы или выбранные диапазоны, Excel предлагает различные настройки и параметры для обеспечения соответствия печатных документов желаемым характеристикам. В этой статье вы узнаете, как распечатать документы Excel на Java с помощью Free Spire.XLS for Java.
- Определение параметров печати и печать Excel в Java
- Определение принтера и печать Excel в Java
Установка файла Free Spire.Xls.jar
Если вы создали
Maven-проект, вы можете легко импортировать jar в свое приложение, используя
следующие конфигурации. Для проектов, не использующих Maven, загрузите jar-файл
по этой
ссылке и добавьте его в качестве зависимости в свое приложение.
Free Spire.XLS for Java предлагает объект
PageSetup для управления тем, как будет распечатан рабочий лист. Например: 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 SetPrintOptions { public static void main(String[] args) { //Create a workbook Workbook workbook = new Workbook(); //Load an Excel document workbook.loadFromFile("C:\Users\Administrator\Desktop\sample.xlsx"); //Get the first worksheet Worksheet worksheet = workbook.getWorksheets().get(0); //Get the PageSetup object of the first worksheet PageSetup pageSetup = worksheet.getPageSetup(); //Set page margins pageSetup.setTopMargin(0.3); pageSetup.setBottomMargin(0.3); pageSetup.setLeftMargin(0.3); pageSetup.setRightMargin(0.3); //Specify print area pageSetup.setPrintArea("A1:D10″); //Specify title row pageSetup.setPrintTitleRows("$1:$2″); //Allow to print with row/column headings pageSetup.isPrintHeadings(true); //Allow to print with gridlines pageSetup.isPrintGridlines(true); //Allow to print comments as displayed on worksheet pageSetup.setPrintComments(PrintCommentType.InPlace); //Set printing quality (dpi) pageSetup.setPrintQuality(300); //Allow to print worksheet in black & white mode pageSetup.setBlackAndWhite(true); //Set the printing order pageSetup.setOrder(OrderType.OverThenDown); //Fit worksheet on one page pageSetup.isFitToPage(true); //Create a PrinterJob object PrinterJob printerJob = PrinterJob.getPrinterJob(); PageFormat pageFormat = printerJob.defaultPage(); Paper paper = pageFormat.getPaper(); //Set the imageable area of this paper paper.setImageableArea(0, 0, pageFormat.getWidth(), pageFormat.getHeight()); //Set the number of copies printerJob.setCopies(1); pageFormat.setPaper(paper); //Call painter to render the workbook in the specified format printerJob.setPrintable(workbook, pageFormat); //Execute print try { printerJob.print(); } catch (PrinterException e) { e.printStackTrace(); } } } В
этом примере показано, как отправить файл Excel на подключенный к сети принтер
в Java. import com.spire.xls.Workbook; 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 SpecifyPrinterSettings { public static void main(String[] args) throws PrinterException { //Create a Workbook object Workbook workbook = new Workbook(); //Load an Excel document workbook.loadFromFile("C:\Users\Administrator\Desktop\Sample.xlsx"); //Create a PrinterJob object PrinterJob printerJob = PrinterJob.getPrinterJob(); //Specify printer name PrintService myPrintService = findPrintService("\\192.168.1.104\HP LaserJet P1007″); printerJob.setPrintService(myPrintService); //Create a PageFormat object and set it to the default size and orientation PageFormat pageFormat = printerJob.defaultPage(); //Return a copy of the Paper object associated with this PageFormat. Paper paper = pageFormat .getPaper(); //Set the imageable area of this Paper paper.setImageableArea(0,0,pageFormat .getWidth(),pageFormat .getHeight()); //Set the Paper object for this PageFormat pageFormat .setPaper(paper); //Set the number of copies printerJob .setCopies(1); //Call painter to render the workbook in the specified format printerJob .setPrintable(workbook,pageFormat); //Execute print try { printerJob.print(); } catch (PrinterException e) { e.printStackTrace(); } } //Get print service by printer name private static PrintService findPrintService(String printerName) { PrintService[] printServices = PrinterJob.lookupPrintServices(); for (PrintService printService : printServices) { if (printService.getName().equals(printerName)) { return printService; } } return null; } } В этой статье мы узнали,
как установить параметры печати Excel и как печатать файлы Excel с помощью Free
Spire.XLS for Java. Эта библиотека имеет множество других возможностей, таких
как:
Определение параметров печати и печать Excel в Java
Определение принтера и печать Excel в Java
Заключение