بدون رفع, 100% محلي، بدون حساب

HTML إلى PDF

الصق HTML، واختر حجم الصفحة، ونزّل PDF, كل شيء يُعرَض داخل متصفحك.

كيف تعمل HTML إلى PDF

تأخذ أداة HTML إلى PDF ترميز HTML تلصقه في المحرر، وتُعقّمه بـ DOMPurify لإزالة النصوص البرمجية والسمات غير الآمنة، وتُصيِّره على canvas خارج الشاشة باستخدام html2canvas، وترمّز النتيجة في ملف PDF باستخدام jsPDF. يعمل المسار كاملًا داخل نافذة المتصفح؛ لا يُرسَل أي كود HTML أو ناتج مُصيَّر إلى أي خادم. هذا يجعلها مناسبة لتحويل مقاطع HTML التي تحتوي على بيانات شخصية لا تريد لصقها في خدمة متصلة.

افهم تنسيق الإخراج قبل الاعتماد عليه. صفحات PDF هي صور نقطية لا نص متجه. النص في الإخراج غير قابل للتحديد وغير قابل للبحث ولا يمكن إعادة تدفقه. الموارد الخارجية مثل الصور المُشار إليها بعنوان URL تحجبها سياسة CORS للمتصفح ولن تُحمَّل. الأنماط المضمنة وCSS المدمج يعملان، لكن التخطيطات المعقدة التي تستخدم خطوط ويب مخصصة أو CSS grid متقدمًا قد لا تُصيَّر بدقة.

كيفية استخدام HTML إلى PDF خطوة بخطوة

  1. الصق ترميز HTML الخاص بك في منطقة المحرر.
  2. اضبط اختياريًا حجم الصفحة (A4 أو Letter) واتجاهها.
  3. انقر على تحويل؛ يُعقّم DOMPurify HTML ويُصيِّره html2canvas.
  4. انتظر حتى يُرمّز jsPDF ناتج canvas كصفحات PDF.
  5. حمّل ملف PDF.

حالات الاستخدام الشائعة

  • ولّدت فاتورة HTML في متصفحك من قالب محلي وتريد نسخة PDF دون إرسالها بالبريد إلى خدمة تحويل.
  • تقرير HTML بسيط مبني من بيانات API يحتاج إلى حفظه كـ PDF للأرشفة؛ الصق HTML وحوّل محليًا.
  • كتبت قالب بريد إلكتروني HTML مُنسَّقًا وتريد معاينة مظهره عند طباعته كـ PDF.
  • يحتاج مطور إلى PDF سريع من مقطع HTML أثناء الاختبار دون إعداد متصفح بلا رأس على جانب الخادم.

الأسئلة الشائعة

لماذا النص في ملف PDF المُخرَج غير قابل للتحديد؟

يُصيِّر مسار التحويل HTML إلى صورة نقطية canvas باستخدام html2canvas، ثم يُرمّز تلك الصورة النقطية كبيانات صورة داخل صفحات PDF باستخدام jsPDF. الإخراج صورة نقطية لا طبقة نص. إذا احتجت إلى ملف PDF بنص قابل للتحديد، ستحتاج إلى متصفح بلا رأس على جانب الخادم مثل Puppeteer وهو ما تتجنبه هذه الأداة عن قصد للحفاظ على المعالجة محلية.

لماذا لا تظهر الصور الموجودة في HTML الخاص بي في ملف PDF؟

الصور المحمّلة من عناوين URL خارجية خاضعة لسياسة CORS للمتصفح. إذا لم يُرسِل خادم الصور رؤوس CORS مسموحة، فلا تستطيع html2canvas قراءة بيانات البكسل ويُصيَّر فتحة الصورة فارغة. الصور المشفرة بـ base64 مضمنة مباشرةً في HTML أو الصور من الأصل ذاته تعمل دون هذا القيد.

هل يُرسَل HTML الذي ألصقه إلى خادم؟

لا. يبقى HTML في ذاكرة المتصفح طوال الوقت. تُعقّمه DOMPurify على جانب العميل، وتُصيِّره html2canvas على جانب العميل، وتُرمّز ملف PDF jsPDF على جانب العميل. لا شيء يغادر نافذة المتصفح.

ما الذي يُزيله تعقيم DOMPurify؟

تُزيل DOMPurify وسوم script وسمات معالجات الأحداث مثل onclick وonload وعناوين URL بـ javascript: وغيرها من البنى التي يمكنها تنفيذ كود. تحفظ ترميز البنية والتنسيق، لذا يبدو الإخراج المُصيَّر متطابقًا لكنه آمن للإدراج في سياق المستند.

هل يمكنني تحويل عنوان URL لصفحة ويب كاملة بدلًا من لصق HTML؟

لا. تعمل الأداة مع ترميز HTML تلصقه مباشرةً. تحميل عنوان URL سيستلزم جلب الصفحة مما يصطدم بقيود CORS لمعظم المواقع وسيتضمن طلب شبكة يُخرج العملية من نموذج المعالجة المحلية.