تحويل HTML إلى PDF في بايثون
تحويل لغة بايثون من HTML إلى PDF
Aspose.pdf لبايثون عبر .NET يتيح لك تحويل مستندات HTML الحالية إلى PDF مع خيارات عرض مرنة. يمكنك ضبط كيفية إنشاء المخرجات لتتناسب مع متطلبات التخطيط والتصميم وإمكانية الوصول والأرشفة.
تحويل HTML إلى PDF
يوضح مثال Python التالي سير العمل الأساسي لتحويل مستند HTML إلى PDF.
- قم بإنشاء مثيل لـ خيارات تحميل HTML فئة.
- قم بتهيئة ملف مستند كائن مع ملف HTML المصدر.
- احفظ مستند PDF الناتج عن طريق الاتصال
document.save().
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
load_options = ap.HtmlLoadOptions()
load_options.page_layout_option = ap.HtmlPageLayoutOption.SCALE_TO_PAGE_WIDTH
document = ap.Document(path_infile, load_options)
document.save(path_outfile)
print(infile + " converted into " + outfile)
التحويلات ذات الصلة
- تحويل ملفات PDF إلى HTML عندما تحتاج إلى إخراج جاهز للويب من ملفات PDF الموجودة.
- تحويل تنسيقات الملفات الأخرى إلى PDF لعمليات سير عمل تحويل EPUB وXPS والنص وPostScript.
- تحويل الصور إلى PDF عندما يكون محتوى المصدر الخاص بك قائمًا على الصور بدلاً من ترميز HTML.
** حاول تحويل HTML إلى PDF عبر الإنترنت**
تقدم Aspose التطبيق عبر الإنترنت «HTML إلى PDF»، حيث يمكنك اختبار جودة التحويل والإخراج.
تحويل HTML إلى PDF باستخدام نوع الوسائط
يوضح هذا المثال كيفية تحويل ملف HTML إلى PDF باستخدام خيارات عرض محددة.
- قم بإنشاء مثيل لـ خيارات تحميل HTML () فئة.
- مجموعة
html_media_typeلتطبيق قواعد CSS المخصصة لتخطيطات الشاشة أو الطباعة، مثلHtmlMediaType.SCREENأوHtmlMediaType.PRINT. - قم بتحميل HTML إلى
ap.Documentباستخدام خيارات التحميل. - احفظ المستند كملف PDF.
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
load_options = ap.HtmlLoadOptions()
load_options.html_media_type = ap.HtmlMediaType.SCREEN
document = ap.Document(path_infile, load_options)
document.save(path_outfile)
print(infile + " converted into " + outfile)
حدد أولويات CSS @page القاعدة أثناء تحويل HTML إلى PDF
تستخدم بعض المستندات ال @page قاعدة لتخطيط الصفحة. إذا كانت هذه الأنماط تتعارض مع الإعدادات الأخرى، يمكنك التحكم في الأولوية باستخدام is_priority_css_page_rule.
- قم بإنشاء مثيل لـ خيارات تحميل HTML فئة.
- مجموعة
is_priority_css_page_rule = Falseللسماح للأنماط الأخرى بالأسبقية@pageقواعد. - قم بتحميل HTML إلى
ap.Documentمع الخيارات التي تم تكوينها. - احفظ المستند كملف PDF.
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
load_options = ap.HtmlLoadOptions()
# load_options.is_priority_css_page_rule = False
document = ap.Document(path_infile, load_options)
document.save(path_outfile)
print(infile + " converted into " + outfile)
تحويل HTML إلى PDF باستخدام الخطوط المضمنة
يوضح هذا المثال كيفية تحويل ملف HTML إلى PDF أثناء تضمين الخطوط. إذا كنت بحاجة إلى ملف PDF الناتج للحفاظ على الطباعة الأصلية، فاضبط is_embed_fonts إلى True.
- ابتكر
HtmlLoadOptions()لتكوين تحويل HTML إلى PDF. - مجموعة
is_embed_fonts = Trueلتضمين الخطوط المستخدمة في HTML مباشرة في PDF. - قم بتحميل HTML إلى
ap.Documentمع هذه الخيارات. - احفظ المستند كملف PDF.
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
load_options = ap.HtmlLoadOptions()
load_options.is_embed_fonts = True
document = ap.Document(path_infile, load_options)
document.save(path_outfile)
print(infile + " converted into " + outfile)
عرض محتوى HTML على صفحة PDF واحدة
يوضح هذا المثال كيفية تحويل ملف HTML إلى ملف PDF من صفحة واحدة باستخدام Aspose.PDF لـ Python عبر .NET. استخدم is_render_to_single_page الخاصية عندما تريد عرض محتوى HTML الكامل على صفحة واحدة مستمرة.
- قم بإنشاء مثيل لـ
HtmlLoadOptions()لتكوين عملية التحويل. - تمكين
is_render_to_single_pageلعرض محتوى HTML الكامل على صفحة واحدة. - قم بتحميل المستند بالخيارات التي تم تكوينها في
ap.Document. - احفظ النتيجة كملف PDF.
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
options = ap.HtmlLoadOptions()
options.is_render_to_single_page = True
doc = ap.Document(path_infile, options)
doc.save(path_outfile)
إنشاء بنية منطقية من علامات HTML
تحافظ البنية المنطقية، التي تسمى أيضًا PDF ذي العلامات، على التسلسل الهرمي الدلالي لـ HTML الأصلي، مثل العناوين والفقرات والقوائم. وهذا يجعل ملف PDF الناتج أكثر سهولة وقابلية للبحث ومناسبًا لعمليات سير عمل المستندات المنظمة.
من خلال تمكين البنية المنطقية أثناء التحويل، يتم تعيين HTML DOM في شجرة علامات PDF بدلاً من تقديمه كمحتوى مرئي فقط.
للوفاء بمتطلبات إمكانية الوصول، يجب أن يتضمن PDF عناصر البنية المنطقية التي تحدد ترتيب القراءة، وتوفر نصًا بديلاً لقارئات الشاشة، وتحافظ على التسلسل الهرمي للمحتوى.
تعتمد جودة البنية المنطقية في ملف PDF الناتج بشكل مباشر على جودة ترميز HTML الأصلي. قد يؤدي HTML غير المنظم أو غير الصالح إلى وضع علامات غير كاملة أو غير دقيقة في ملف PDF المحول.
- قم بإنشاء مثيل HTMLLoadOptions للتحكم في كيفية تحويل HTML.
- قم بتنشيط العلامات الدلالية بحيث يحتوي PDF على عناصر منظمة.
- افتح ملف HTML باستخدام الخيارات التي تم تكوينها.
- احفظ ملف PDF المنظم.
import aspose.pdf as ap
# Path to the source HTML
input_html_path = "input.html"
# Path for the Logical Structure PDF
output_pdf_path = "output_logical_structure.pdf"
# Initialize HtmlLoadOptions
options = ap.HtmlLoadOptions()
# Convert HTML markup to PDF logical structure elements
options.create_logical_structure = True
# Open PDF document
with ap.Document(input_html_path, options) as document:
# Save PDF document
document.save(output_pdf_path)
تحويل ملفات MHTML إلى PDF
يوضح هذا المثال كيفية تحويل ملف MHT أو MHTML إلى مستند PDF باستخدام Aspose.PDF لـ Python عبر .NET بأبعاد صفحة محددة.
- قم بإنشاء مثيل لـ
ap.MhtLoadOptions()لتكوين معالجة ملفات MHTML. - قم بتعيين العديد من المعلمات، مثل حجم الصفحة.
- قم بتهيئة المستند باستخدام ملف الإدخال وخيارات التحميل المهيأة.
- احفظ المستند الناتج كملف PDF.
from os import path
import aspose.pdf as ap
path_infile = path.join(self.data_dir, infile)
path_outfile = path.join(self.data_dir, "python", outfile)
load_options = ap.MhtLoadOptions()
load_options.page_info.width = 842
load_options.page_info.height = 1191
document = ap.Document(path_infile, load_options)
document.save(path_outfile)
print(infile + " converted into " + outfile)
