Друк PDF-файлу в Python | Друк PDF на принтер | Друк PDF-файлів

Друк документа PDF є загальною вимогою при розробці програм. Незалежно від того, чи створюєте ви звіти, рахунки-фактури чи будь-який інший тип документа, друк PDF-файлу безпосередньо з коду на принтері може бути цінною функцією. У цій публікації блогу ми дізнаємося, як надрукувати PDF-файл на принтері в Python.

Ця стаття охоплює такі теми:

Бібліотека Python для друку PDF на принтері

Для програмного друку PDF-файлу на Python ми будемо використовувати бібліотеку Aspose.PDF for Python через .NET. Завдяки простому встановленню та використанню він забезпечує ефективне рішення для надсилання PDF-файлів на принтер за допомогою коду Python. Aspose.PDF for Python дозволяє розробникам створювати, маніпулювати та конвертувати PDF-документи у своїх програмах Python.

Щоб розпочати друк PDF-документа в Python, спочатку потрібно інсталювати необхідні бібліотеки. Будь ласка, завантажте пакет або інсталюйте API з PyPI за допомогою такої команди pip у консолі:

> pip install aspose-pdf

Ми можемо легко надрукувати PDF-файл програмним шляхом на Python, виконавши наведені нижче дії.

  1. Створіть екземпляр класу PdfViewer.
  2. Завантажте вхідний PDF-документ за допомогою методу bindpdf().
  3. Після цього викличте метод printdocument(), щоб надрукувати файл PDF.
  4. Нарешті, закрийте програму перегляду PDF за допомогою методу close().

У наведеному нижче прикладі коду показано, як надрукувати PDF-файл у Python.

# Цей приклад коду демонструє, як надрукувати PDF-файл у Python.
import aspose.pdf as ap

# Створити об'єкт PdfViewer
viewer = ap.facades.PdfViewer();

# Відкрити вхідний файл PDF
viewer.bind_pdf("Document.pdf");

# Роздрукуйте документ PDF
viewer.print_document();

# Закрити файл PDF
viewer.close();

Ми також можемо пакетно друкувати PDF-файли з папки в Python, виконавши наведені нижче дії.

  1. Завантажте PDF-файли з указаного шляху папки.
  2. Перегляньте всі файли PDF.
  3. Створіть екземпляр класу PdfViewer.
  4. Зв’яжіть кожен вхідний PDF-файл один за одним за допомогою методу bindpdf().
  5. Після цього викличте метод printdocument(), щоб надрукувати файл PDF.
  6. Нарешті, закрийте програму перегляду PDF за допомогою методу close().

У наведеному нижче прикладі коду показано, як надрукувати кілька PDF-файлів у Python.

# Цей приклад коду демонструє, як надрукувати кілька PDF-файлів одночасно в Python.
import os
import aspose.pdf as ap

# Шлях до каталогу, що містить PDF-файли для друку
path = "D:\\Files\\"

# Отримати файли PDF
files = [f for f in os.listdir(path) if f.endswith(".pdf")]

# Прочитайте всі файли та роздрукуйте
for file in files:
    # Створити об'єкт PdfViewer
    viewer = ap.facades.PdfViewer();
    
    # Відкрити вхідний файл PDF
    viewer.bind_pdf(path + file);
    
    # Роздрукуйте документ PDF
    viewer.print_document();
    
    # Закрити файл PDF
    viewer.close();

У деяких випадках нам може знадобитися надрукувати певний діапазон сторінок із документа PDF. Для цього нам потрібно вказати номери сторінок від і до. Ми можемо надрукувати діапазон сторінок, виконавши наведені нижче дії.

  1. Створіть екземпляр класу PdfViewer.
  2. Завантажте вхідний PDF-документ за допомогою методу bindpdf().
  3. За бажанням можна вказати різні атрибути засобу перегляду, наприклад автоматичне змінення розміру, автоматичне обертання тощо.
  4. Створіть екземпляр класу PageSettings.
  5. Ініціалізуйте об’єкт класу PrinterSettings.
  6. Укажіть властивості printrange, frompage і topage.
  7. Після цього викличте метод viewer.printdocumentwithsettings(), щоб надрукувати документ за допомогою параметрів принтера та сторінки.
  8. Нарешті, закрийте програму перегляду PDF за допомогою методу close().

У наведеному нижче прикладі коду показано, як надрукувати певні сторінки документа PDF у Python.

# Цей приклад коду демонструє, як на Python надрукувати ряд сторінок із PDF-файлу.
import aspose.pdf as ap

# Створити об'єкт PdfViewer
viewer = ap.facades.PdfViewer();

# Відкрити вхідний файл PDF
viewer.bind_pdf("Document.pdf");

# Встановити атрибути для друку
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Створення об’єктів для параметрів принтера та сторінки та PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Встановіть назву принтера
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# Роздрукуйте документ за допомогою параметрів принтера та сторінки
viewer.print_document_with_settings(pgs, ps);

# Закрити файл PDF
viewer.close();

Укажіть розмір сторінки для друку PDF-файлу

Подібним чином ми також можемо вказати розмір сторінки під час друку PDF-файлу, виконавши кроки, згадані раніше. Однак нам просто потрібно вказати розмір паперу за допомогою класу PaperSize і поля за допомогою класу Margins на кроці 6.

У наведеному нижче прикладі коду показано, як надрукувати PDF-документ із певним розміром сторінки та полями за допомогою Python.

# Цей приклад коду демонструє, як на Python надрукувати ряд сторінок із PDF-файлу.
import aspose.pdf as ap

# Створити об'єкт PdfViewer
viewer = ap.facades.PdfViewer();

# Відкрити вхідний файл PDF
viewer.bind_pdf("Document.pdf");

# Встановити атрибути для друку
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Створення об’єктів для параметрів принтера та сторінки та PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Встановіть назву принтера
ps.printer_name = "Microsoft Print to PDF";

ps.print_range = ap.printing.PrintRange.SOME_PAGES;
ps.from_page = 1;
ps.to_page = 2;

# Встановіть розмір сторінки (якщо потрібно)
pgs.paper_size = ap.printing.PaperSize("A4", 827, 1169);

# Встановити поля сторінки (якщо потрібно)
pgs.margins = ap.devices.Margins(0, 0, 0, 0);

# Роздрукуйте документ за допомогою параметрів принтера та сторінки
viewer.print_document_with_settings(pgs, ps);

# Закрити файл PDF
viewer.close();

Ми можемо надрукувати захищений або захищений паролем PDF-файл, виконавши наведені нижче дії.

  1. Завантажте захищений PDF-файл із паролем за допомогою класу Document.
  2. Створіть екземпляр класу PdfViewer.
  3. Зв’яжіть PDF-документ за допомогою методу bindpdf().
  4. Після цього викличте метод printdocument(), щоб надрукувати файл PDF.
  5. Нарешті, закрийте програму перегляду PDF за допомогою методу close().

У наведеному нижче прикладі коду показано, як надрукувати захищений PDF-файл у Python.

# Завантажте безпечний PDF-документ, вказавши пароль користувача або власника
document = ap.Document("Password.pdf" , "userORowner");

# Створіть об'єкт PdfViewer
viewer = ap.facades.PdfViewer();

# Відкрити вхідний файл PDF
viewer.bind_pdf(document);

# Роздрукувати документ PDF
viewer.print_document();

# Закрити файл PDF
viewer.close();

Ми можемо надрукувати PDF-документ у відтінках сірого, виконавши наведені нижче дії.

  1. Завантажте вхідний PDF-документ за допомогою класу Document.
  2. Ініціалізуйте об’єкт класу RgbToDeviceGrayConversionStrategy.
  3. Перегляньте всі сторінки та перетворіть у GrayScale за допомогою методу strategy.convert().
  4. Створіть екземпляр класу PdfViewer.
  5. Зв’яжіть PDF-документ за допомогою методу bindpdf().
  6. Після цього викличте метод printdocument(), щоб надрукувати файл PDF.
  7. Нарешті, закрийте програму перегляду PDF за допомогою методу close().

У наведеному нижче прикладі коду показано, як перетворити PDF-файл у градації сірого, а потім надрукувати його за допомогою Python.

# Цей приклад коду демонструє, як на Python надрукувати PDF-файл у відтінках сірого.
import aspose.pdf as ap

# Завантажте вхідний PDF-документ
document = ap.Document("D:\\Files\\Output.pdf");

# Запустіть стратегію перетворення RGB у Device Gry
strategy = ap.RgbToDeviceGrayConversionStrategy();

# Перегляньте всі сторінки
for page in document.pages:
    # Перетворіть зображення колірного простору RGB на колірний простір GrayScale
    strategy.convert(page);

# Створити об'єкт PdfViewer
viewer = ap.facades.PdfViewer();

# Відкрити вхідний файл PDF
viewer.bind_pdf(document);

# Роздрукувати документ PDF
viewer.print_document();

# Закрити файл PDF
viewer.close();

Отримайте безкоштовну ліцензію

Ви можете отримати тимчасову ліцензію, щоб користуватися бібліотекою без оціночних обмежень.

Друк PDF – безкоштовні ресурси

Окрім друку PDF-файлів на принтері в Python, дізнайтеся більше про створення, обробку та перетворення PDF-документів, а також ознайомтеся з різними іншими функціями бібліотеки за допомогою ресурсів нижче:

Висновок

У цій статті ми дізналися, як надрукувати PDF-файл на Python. Використовуючи Aspose.PDF for Python, ви можете легко надсилати PDF-файли на принтер із коду Python. Ця потужна функція дає змогу користувачам створювати звіти та легко керувати документообігом у різних програмах. Дотримуючись кроків, описаних у цій публікації блогу, ви можете автоматизувати завдання друку PDF-файлів. У разі будь-яких неясностей зв’яжіться з нами на нашому безкоштовному форумі підтримки.

Дивись також