In tệp PDF bằng Python | In PDF sang máy in | In PDF

In tài liệu PDF là một yêu cầu phổ biến trong phát triển ứng dụng. Cho dù bạn đang tạo báo cáo, hóa đơn hay bất kỳ loại tài liệu nào khác, việc in tệp PDF trực tiếp từ mã tới máy in có thể là một tính năng có giá trị. Trong bài đăng trên blog này, chúng ta sẽ tìm hiểu cách in tệp PDF sang máy in bằng Python.

Bài viết này bao gồm các chủ đề sau:

Thư viện Python để in PDF sang máy in

Để in tệp PDF bằng Python theo chương trình, chúng tôi sẽ sử dụng thư viện Aspose.PDF for Python via .NET. Với cách cài đặt và sử dụng đơn giản, nó cung cấp giải pháp hiệu quả để gửi tệp PDF tới máy in bằng mã Python. Aspose.PDF for Python cho phép các nhà phát triển tạo, thao tác và chuyển đổi tài liệu PDF trong ứng dụng Python của họ.

Để bắt đầu in tài liệu PDF bằng Python, trước tiên chúng ta cần cài đặt các thư viện cần thiết. Vui lòng tải xuống gói hoặc cài đặt API từ PyPI bằng cách sử dụng lệnh pip sau trong bảng điều khiển:

> pip install aspose-pdf

Chúng ta có thể dễ dàng in tệp PDF theo chương trình bằng Python bằng cách thực hiện theo các bước bên dưới:

  1. Tạo một thể hiện của lớp PdfViewer.
  2. Tải tài liệu PDF đầu vào bằng phương thức bindpdf().
  3. Sau đó, gọi phương thức printdocument() để in tệp PDF.
  4. Cuối cùng, đóng trình xem PDF bằng phương thức close().

Mẫu mã sau đây cho biết cách in tệp PDF bằng Python.

# Ví dụ mã này trình bày cách in tệp PDF bằng Python.
import aspose.pdf as ap

# Tạo đối tượng PdfViewer
viewer = ap.facades.PdfViewer();

# Mở tệp PDF đầu vào
viewer.bind_pdf("Document.pdf");

# In tài liệu PDF
viewer.print_document();

# Đóng tệp PDF
viewer.close();

Chúng tôi cũng có thể in hàng loạt tệp PDF từ một thư mục bằng Python bằng cách thực hiện theo các bước bên dưới:

  1. Tải tập tin PDF từ đường dẫn thư mục được cung cấp.
  2. Lặp lại tất cả các tệp PDF.
  3. Tạo một thể hiện của lớp PdfViewer.
  4. Liên kết từng tệp PDF đầu vào bằng phương thức bindpdf().
  5. Sau đó, gọi phương thức printdocument() để in tệp PDF.
  6. Cuối cùng, đóng trình xem PDF bằng phương thức close().

Mẫu mã sau đây cho biết cách in nhiều tệp PDF bằng Python.

# Ví dụ mã này trình bày cách in nhiều tệp PDF cùng một lúc bằng Python.
import os
import aspose.pdf as ap

# Đường dẫn thư mục chứa file PDF cần in
path = "D:\\Files\\"

# Nhận tệp PDF
files = [f for f in os.listdir(path) if f.endswith(".pdf")]

# Đọc tất cả các tập tin và in
for file in files:
    # Tạo đối tượng PdfViewer
    viewer = ap.facades.PdfViewer();
    
    # Mở tệp PDF đầu vào
    viewer.bind_pdf(path + file);
    
    # In tài liệu PDF
    viewer.print_document();
    
    # Đóng tệp PDF
    viewer.close();

Trong một số trường hợp nhất định, chúng tôi có thể cần in một phạm vi trang cụ thể từ tài liệu PDF. Với mục đích này, chúng ta cần chỉ định số trang từ và đến. Chúng ta có thể in phạm vi trang bằng cách thực hiện theo các bước dưới đây:

  1. Tạo một thể hiện của lớp PdfViewer.
  2. Tải tài liệu PDF đầu vào bằng phương thức bindpdf().
  3. Theo tùy chọn, chỉ định các thuộc tính trình xem khác nhau, chẳng hạn như tự động thay đổi kích thước, tự động xoay, v.v.
  4. Tạo một phiên bản của lớp PageSettings.
  5. Khởi tạo đối tượng lớp PrinterSettings.
  6. Chỉ định các thuộc tính printrange, frompage và topage.
  7. Sau đó, gọi phương thứcviewer.printdocumentwithsettings() để in tài liệu bằng cách sử dụng cài đặt máy in và trang.
  8. Cuối cùng, đóng trình xem PDF bằng phương thức close().

Mẫu mã sau đây cho biết cách in các trang cụ thể của tài liệu PDF bằng Python.

# Ví dụ về mã này trình bày cách in một loạt trang từ tệp PDF bằng Python.
import aspose.pdf as ap

# Tạo đối tượng PdfViewer
viewer = ap.facades.PdfViewer();

# Mở tệp PDF đầu vào
viewer.bind_pdf("Document.pdf");

# Đặt thuộc tính để in
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Tạo các đối tượng cho cài đặt máy in và trang cũng như PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Đặt tên máy in
ps.printer_name = "Microsoft Print to PDF";

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

# In tài liệu bằng cài đặt máy in và trang
viewer.print_document_with_settings(pgs, ps);

# Đóng tệp PDF
viewer.close();

Chỉ định kích thước trang để in PDF

Tương tự, chúng ta cũng có thể chỉ định kích thước trang trong khi in tệp PDF bằng cách làm theo các bước được đề cập trước đó. Tuy nhiên, chúng ta chỉ cần xác định khổ giấy bằng lớp PaperSize và lề sử dụng lớp Margins ở bước 6.

Mẫu mã sau đây cho biết cách in tài liệu PDF ở kích thước trang và lề cụ thể bằng Python.

# Ví dụ về mã này trình bày cách in một loạt trang từ tệp PDF bằng Python.
import aspose.pdf as ap

# Tạo đối tượng PdfViewer
viewer = ap.facades.PdfViewer();

# Mở tệp PDF đầu vào
viewer.bind_pdf("Document.pdf");

# Đặt thuộc tính để in
viewer.auto_resize = True
viewer.auto_rotate = True
viewer.print_page_dialog = False

# Tạo các đối tượng cho cài đặt máy in và trang cũng như PrintDocument
pgs = ap.printing.PageSettings();
ps = ap.printing.PrinterSettings();

# Đặt tên máy in
ps.printer_name = "Microsoft Print to PDF";

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

# Đặt kích thước trang (nếu cần)
pgs.paper_size = ap.printing.PaperSize("A4", 827, 1169);

# Đặt PageMargins (nếu cần)
pgs.margins = ap.devices.Margins(0, 0, 0, 0);

# In tài liệu bằng cài đặt máy in và trang
viewer.print_document_with_settings(pgs, ps);

# Đóng tệp PDF
viewer.close();

Chúng tôi có thể in tệp PDF được bảo mật hoặc được bảo vệ bằng mật khẩu bằng cách thực hiện theo các bước bên dưới:

  1. Tải tệp PDF được bảo mật bằng mật khẩu bằng lớp Tài liệu.
  2. Tạo một thể hiện của lớp PdfViewer.
  3. Liên kết tài liệu PDF bằng phương thức bindpdf().
  4. Sau đó, gọi phương thức printdocument() để in tệp PDF.
  5. Cuối cùng, đóng trình xem PDF bằng phương thức close().

Mẫu mã sau đây cho biết cách in tệp PDF được bảo mật bằng Python.

# Tải tài liệu PDF an toàn trong khi chỉ định mật khẩu Người dùng hoặc Chủ sở hữu
document = ap.Document("Password.pdf" , "userORowner");

# Tạo đối tượng PdfViewer
viewer = ap.facades.PdfViewer();

# Mở tệp PDF đầu vào
viewer.bind_pdf(document);

# In tài liệu PDF
viewer.print_document();

# Đóng tệp PDF
viewer.close();

Chúng ta có thể in tài liệu PDF ở chế độ thang độ xám bằng cách thực hiện theo các bước bên dưới:

  1. Tải tài liệu PDF đầu vào bằng lớp Tài liệu.
  2. Khởi tạo đối tượng lớp RgbToDeviceGrayConversionStrategy.
  3. Lặp lại tất cả các trang và chuyển đổi sang GrayScale bằng phương thức Strategy.convert().
  4. Tạo một thể hiện của lớp PdfViewer.
  5. Liên kết tài liệu PDF bằng phương thức bindpdf().
  6. Sau đó, gọi phương thức printdocument() để in tệp PDF.
  7. Cuối cùng, đóng trình xem PDF bằng phương thức close().

Mẫu mã sau đây cho biết cách chuyển đổi tệp PDF sang thang độ xám rồi in bằng Python.

# Ví dụ mã này trình bày cách in tệp PDF dưới dạng Grayscale trong Python.
import aspose.pdf as ap

# Tải tài liệu PDF đầu vào
document = ap.Document("D:\\Files\\Output.pdf");

# Bắt đầu chiến lược chuyển đổi RGB sang Device Gry
strategy = ap.RgbToDeviceGrayConversionStrategy();

# Lặp qua tất cả các trang
for page in document.pages:
    # Chuyển đổi hình ảnh không gian màu RGB thành không gian màu GrayScale
    strategy.convert(page);

# Tạo đối tượng PdfViewer
viewer = ap.facades.PdfViewer();

# Mở tệp PDF đầu vào
viewer.bind_pdf(document);

# In tài liệu PDF
viewer.print_document();

# Đóng tệp PDF
viewer.close();

Nhận giấy phép miễn phí

Bạn có thể xin giấy phép tạm thời để sử dụng thư viện mà không bị giới hạn về đánh giá.

In PDF – Tài nguyên miễn phí

Bên cạnh việc in tệp PDF sang máy in bằng Python, hãy tìm hiểu thêm về cách tạo, thao tác và chuyển đổi tài liệu PDF cũng như khám phá nhiều tính năng khác của thư viện bằng cách sử dụng các tài nguyên bên dưới:

Phần kết luận

Trong bài viết này, chúng ta đã học cách in tệp PDF bằng Python. Bằng cách tận dụng Aspose.PDF for Python, bạn có thể dễ dàng gửi các tệp PDF của mình tới máy in từ trong mã Python của mình. Tính năng mạnh mẽ này cho phép người dùng tạo báo cáo và quản lý quy trình làm việc tài liệu một cách liền mạch trên các ứng dụng khác nhau. Bằng cách làm theo các bước được nêu trong bài đăng trên blog này, bạn có thể tự động hóa tác vụ in tệp PDF. Trong trường hợp có bất kỳ sự mơ hồ nào, vui lòng liên hệ với chúng tôi trên diễn đàn hỗ trợ miễn phí của chúng tôi.

Xem thêm