الانتقال إلى المحتوى الرئيسي
PulsarKit

تحويل SVG إلى PNG

حوّل ملفات SVG إلى PNG بأي مقياس أو بأبعاد دقيقة بالبكسل في متصفحك. وتُحذف النصوص البرمجية والروابط الخارجية قبل رسم أي شيء.

أفلت ملفاتك هنا

⁦.svg⁩ · حتى 10 م.ب

طريقة تحويل إلى PNG

  1. 1

    إفلات ملفات SVG

    حتى 100 ملف دفعة واحدة. ويُتحقق أولًا من أن كل ملف يحتوي فعلًا على شيفرة SVG، قبل أي خطوة أخرى.

  2. 2

    ضبط المقياس أو الأبعاد الدقيقة

    اضرب المقاس الأصلي للرسم في قيمة من 0.5 إلى 10، أو اكتب العرض الذي تحتاجه بالضبط، ودع الارتفاع يتبع نسبة العرض إلى الارتفاع.

  3. 3

    تنزيل ملفات PNG

    يعود الملف الواحد بصيغة PNG، والملفات المتعددة في أرشيف ZIP. وتعرض بطاقة النتيجة الأبعاد بالبكسل التي حصلت عليها فعلًا.

تغيير المقياس لا إعادة أخذ العينات

ملف SVG لا يحتوي على بكسلات، بل على تعليمات لرسم الأشكال. لذا فملف PNG المرسوم بمقياس 4× ليس صورة صغيرة مكبّرة، بل يُرسم كل منحنى من جديد بالمقاس الأكبر، وتبقى الحواف حادة. وتستفيد هذه الأداة من ذلك: قبل الرسم تُعاد كتابة العرض والارتفاع في العنصر الجذر بالأبعاد بالبكسل التي طلبتها، فيحوّل المتصفح المسارات المتجهة إلى بكسلات بالدقة المستهدفة مباشرة، بدل تكبير صورة نقطية صغيرة جاهزة على لوحة الرسم. والمقياس الافتراضي 2 مخصص للحالة الأكثر شيوعًا: شعار رُسم لشاشة عادية ويجب أن يبقى واضحًا على شاشة Retina. أما وضع الأبعاد الدقيقة بالبكسل فهو للحالات التي تطلب فيها المنصة رقمًا محددًا، مثل أيقونة تطبيق بمقاس 1024×1024 أو صورة معاينة للشبكات الاجتماعية بمقاس 1200×630.

لماذا تُحذف النصوص البرمجية والروابط الخارجية

صيغة SVG هي XML، وملف XML قد يحمل أكثر من الرسوم. فالملف الذي يصلك من شخص آخر قد يحتوي على عنصر <script>، أو سمات لمعالجة الأحداث مثل onload، أو عنصر foreignObject يضم مستند HTML كاملًا، أو إشارات إلى صور وخطوط على خادم آخر. وفتح ملف كهذا دون حذر قد يشغّل شيفرة شخص آخر في علامة التبويب لديك، أو يُبلغ خادمًا بعيدًا بصمت أنك فتحت الملف ومتى فتحته. لذلك يمر كل ملف هنا أولًا عبر DOMPurify بملف تعريف SVG، ثم عبر مرحلة ثانية من عندنا تحذف كل href وxlink:href وurl() في CSS لا يشير إلى معرّف داخل الملف نفسه أو إلى عنوان data: URI مضمّن. أما الخطوط والصور المضمّنة بصيغة data: URI فتبقى وتُعرض بشكل طبيعي. وكل ما يُحذف يُحصى، فتعرف لماذا ظهر جزء من الرسم فارغًا.

الشفافية والخلفية

تدعم صيغة PNG قناة ألفا، لذا تبقى المناطق التي لا يلوّنها ملف SVG شفافة افتراضيًا، وهذا ما تريده لشعار سيوضع فوق ترويسة ملونة. وإن كانت الوجهة لا تتعامل مع الشفافية، فاختر الأبيض أو لونًا مخصصًا، فتُملأ الخلفية به قبل وضع الرسم فوقها، في مرحلة واحدة ودون هالة حول الحواف.

يبقى ملفك على جهازك

القراءة والتنقية والرسم والترميز بصيغة PNG، كلها تجري داخل علامة التبويب هذه من متصفحك. لا يُرفع شيء ولا يُخزَّن شيء. وخطوة التنقية هي ما يجعل تنفيذ ذلك محليًا آمنًا أصلًا: فحين يصل ملف SVG إلى الصفحة، لا يعود قادرًا على تشغيل شيفرة أو الاتصال بالشبكة.

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

لماذا تبدو صورة PNG ضبابية عند مقياس كبير؟

لا ينبغي أن يحدث ذلك، لأن الرسم المتجه يُعاد رسمه بالمقاس المستهدف ولا يُمطّ. وإن بدت الصورة غير حادة، فالأرجح أن ملف SVG يحتوي على صورة نقطية مضمّنة (صورة بعنوان data: URI) بدل مسارات متجهة حقيقية؛ ولتلك الصورة دقة ثابتة، وتكبيرها لا يضيف تفاصيل. افتح الملف الأصلي في محرر لترى إن كانت الأشكال مسارات أم صورة واحدة مضمّنة.

ماذا يحدث للنصوص البرمجية داخل ملف SVG؟

تُحذف قبل رسم الملف، ومعها سمات معالجة الأحداث مثل onload وonclick، وأي كتلة foreignObject. ولا يُنفَّذ أي شيء من الملف أبدًا. وهذا ليس خيارًا ولا إعدادًا: لا يوجد هنا أي مسار في الشيفرة يرسم ملف SVG دون تنقيته أولًا.

لماذا لم تظهر الصور الخارجية في ملف SVG؟

تُحذف أي إشارة إلى عنوان http:// أو https:// أو عنوان // نسبي البروتوكول، لأن جلبه سيُبلغ ذلك الخادم بأنك فتحت الملف. ولا يبقى إلا الإشارات إلى معرّف id داخل المستند نفسه وعناوين data: URI المضمّنة. فإن احتجت إلى تلك الصور في النتيجة، فضمّنها أولًا في ملف SVG بصيغة data: URI، ثم حوّل الملف.

كيف أحصل على أبعاد دقيقة بالبكسل؟

اختر لمقاس الإخراج وضع البكسلات الدقيقة، ثم اكتب العرض. اترك الارتفاع 0 فيُحسب من نسبة العرض إلى الارتفاع في الرسم، فلا يتشوه شيء؛ أو اكتب ارتفاعًا إن أردت عمدًا مطّ الرسم داخل إطار ثابت. والحد الأقصى لكل ضلع 16384 بكسل، وهو حد لوحة الرسم في المتصفح.

هل تبقى الشفافية؟

نعم، افتراضيًا. فالمناطق غير الملوّنة تخرج في ملف PNG بقيمة ألفا 0. وإن احتجت إلى خلفية مصمتة بدلًا من ذلك، فاختر الأبيض أو لونًا مخصصًا في إعداد «الخلفية»، لأن بعض البرامج القديمة وبرامج البريد الإلكتروني تعرض المناطق الشفافة في PNG باللون الأسود.

ماذا لو لم يكن في ملف SVG سمة viewBox؟

عندها تحدد سمتا العرض والارتفاع (width وheight) المقاس الأصلي. وإن غابتا أيضًا، يُستخدم المقاس الافتراضي في مواصفات SVG، وهو 300×150، ويُطبَّق المقياس عليه. وهذا هو المقاس نفسه الذي يعطيه المتصفح للملف، فتطابق النتيجة ما تراه عند فتح ملف SVG مباشرة.

كم ملفًا يمكنني تحويله دفعة واحدة؟

حتى 100 ملف، بحجم 10 ميغابايت لكل ملف و200 ميغابايت إجمالًا. تشترك الملفات في الإعدادات نفسها وتُرسم واحدًا تلو الآخر؛ والملف الذي يفشل لا يلغي البقية، ويعود كل ما نجح في أرشيف ZIP واحد.

هل يُرفع الملف إلى خادم؟

لا. التنقية والرسم كلاهما يجريان في متصفحك. لا رفع ولا طابور انتظار ولا نسخة مخزنة؛ وإغلاق علامة التبويب هو كل ما يلزم للتنظيف.

أدلة

أدوات ذات صلة