Главное Авторские колонки Вакансии Образование
227 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как печатать PDF-документы в Java

В этой статье вы узнаете, как распечатывать PDF-документы на Java с помощью библиотек Spire.PDF for Java и java.awt.print.
Мнение автора может не совпадать с мнением редакции

Формат переносимых документов (PDF) предпочитают за его последовательное форматирование и совместимость с различными платформами, что делает его идеальным выбором для любых целей — от деловых отчетов до личных проектов. Довольно часто PDF-файлы необходимо распечатывать в виде бумажных материалов.

В этой статье вы узнаете, как распечатывать PDF-документы на Java с помощью библиотек Spire.PDF for Java и java.awt.print.

  • Печать PDF с диалоговым окном печати
  • Печать PDF без диалогового окна печати
  • Печать PDF с указанного принтера

Установите необходимую библиотеку

Spire.PDF for Java — это профессиональная Java-библиотека для чтения, создания и работы с PDF-файлами в Java-приложениях.

Если вы создали проект Maven, вы можете легко импортировать jar в свое приложение с помощью следующих конфигураций. Для проектов, не использующих Maven, загрузите Spire.Pdf.jar и добавьте его в качестве зависимости в ваше приложение.

Импортируйте ненужные библиотеки:

  • com.spire.pdf.PdfDocument: Этот класс является частью библиотеки Spire PDF и используется для работы с PDF-документами.
  • java.awt.print.*: Эти классы являются частью Java AWT (Abstract Window Toolkit) для обработки операций печати.

Печать PDF с диалоговым окном печати

Этот код обеспечивает простой способ печати PDF-файла, задавая задание печати, определяя область печати и отображая диалог печати для пользователя. Для работы с PDF-документами используется библиотека Spire PDF, а для процесса печати — стандартный фреймворк печати Java.

import com.spire.pdf.PdfDocument;

import java.awt.print.PageFormat;

import java.awt.print.Paper;

import java.awt.print.PrinterException;

import java.awt.print.PrinterJob;

public class PrintWithPrintDialog {

public static void main(String[] args) {

// Создаем объект PrinterJob, который изначально связан с принтером по умолчанию

PrinterJob printerJob = PrinterJob.getPrinterJob();

// Создаем объект PageFormat и устанавливаем его на стандартный размер и ориентацию

PageFormat pageFormat = printerJob.defaultPage();

// Возвращаем копию объекта Paper, связанного с этим PageFormat

Paper paper = pageFormat.getPaper();

// Устанавливаем область печати для этого Paper

paper.setImageableArea(0, 0, pageFormat.getWidth(), pageFormat.getHeight());

// Устанавливаем объект Paper для этого PageFormat

pageFormat.setPaper(paper);

// Создаем объект PdfDocument

PdfDocument pdf = new PdfDocument();

// Загружаем PDF файл

pdf.loadFromFile("C:\\Users\\Administrator\\Desktop\\sample.pdf");

// Вызываем painter для отрисовки страниц в указанном формате

printerJob.setPrintable(pdf, pageFormat);

// Отображаем диалог печати

if (printerJob.printDialog()) {

try {

printerJob.print();

} catch (PrinterException e) {

e.printStackTrace();

}

}

}

}

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем