فئة عارض ملفات PDF
يوفر Aspose.PDF لبيثون عبر .NET عارض ملفات PDF واجهة للعمل مع سيناريوهات عرض PDF وفك تشفير الصفحة. إحدى حالات الاستخدام الشائعة هي تحويل صفحات PDF إلى كائنات صور يمكن حفظها بعد ذلك على القرص.
قم بإنشاء مساعد PDFViewer قابل لإعادة الاستخدام
قبل فك تشفير الصفحات أو قراءة الخصائص المتعلقة بالمشاهد، قم بإنشاء مساعد صغير يقوم بتهيئة ملف PdfViewer مثال. هذا يحافظ على الأمثلة أدناه قائمة بذاتها ويوضح كيفية إنشاء كائن المشاهد قبل ربطه بمستند PDF.
import aspose.pdf as ap
import aspose.pdf.facades as pdf_facades
def _create_viewer() -> pdf_facades.PdfViewer:
"""Create a PdfViewer configured for decoding examples."""
viewer = pdf_facades.PdfViewer()
viewer.coordinate_type = ap.PageCoordinateType.MEDIA_BOX
viewer.resolution = 150
viewer.scale_factor = 1.0
viewer.show_hidden_areas = False
return viewer
فك شفرة جميع صفحات PDF
استخدم decode_all_pages() عندما تريد تحويل كل صفحة في PDF إلى صورة منفصلة. يمكن بعد ذلك حفظ صور الصفحة التي تم إرجاعها واحدة تلو الأخرى في دليل الإخراج.
import sys
from os import path
import aspose.pdf as ap
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def decode_all_pages(infile: str, output_dir: str) -> None:
"""Decode all pages of a PDF document into image files."""
viewer = _create_viewer()
try:
viewer.open_pdf_file(infile)
decoded_pages = viewer.decode_all_pages()
for index, page_image in enumerate(decoded_pages, start=1):
image_path = path.join(output_dir, f"decode_all_pages_{index}.png")
page_image.save(image_path)
finally:
viewer.close_pdf_file()
فك شفرة صفحة PDF محددة
استخدم decode_page() عندما تحتاج إلى صفحة واحدة فقط من المستند. يكون هذا مفيدًا عند إنشاء معاينات أو صور مصغرة أو عمليات تصدير خاصة بالصفحة.
import sys
from os import path
import aspose.pdf as ap
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def decode_specific_page(infile: str, outfile: str, page_number: int = 1) -> None:
"""Decode a specific PDF page into an image file."""
viewer = _create_viewer()
try:
viewer.bind_pdf(infile)
page_image = viewer.decode_page(page_number)
page_image.save(outfile)
finally:
viewer.close()
افحص بيانات PDF الوصفية
ال inspect_pdf_metadata توضح الوظيفة كيفية فتح مستند PDF واسترداد البيانات الوصفية الأساسية المتعلقة بالعارض باستخدام Aspose.PDF. وهي تركز على استخراج المعلومات التي تصف كيفية تفسير المستند وعرضه بدلاً من محتواه.
import sys
from os import path
import aspose.pdf as ap
import aspose.pdf.facades as pdf_facades
from config import initialize_data_dir, set_license
def inspect_pdf_metadata(infile: str) -> None:
"""Open a PDF and print page-count related viewer metadata."""
viewer = _create_viewer()
try:
viewer.open_pdf_file(infile)
print(f"Page count: {viewer.page_count}")
print(f"Coordinate type: {viewer.coordinate_type}")
print(f"Resolution: {viewer.resolution}")
finally:
viewer.close_pdf_file()