TheBrain نشر 9 فبراير 2016 أرسل تقرير نشر 9 فبراير 2016 لدي صور ذات امتداد svg فما الطريقة الصحيحة لتحويلها إلى png عن طريق استخدام لغة بايثون؟ هل يجب علي استخدام مكتبة pyCairo؟ حفظت صورة svg في سلسلة نصية. اقتباس
0 هشام رزق الله نشر 9 فبراير 2016 أرسل تقرير نشر 9 فبراير 2016 يوجد في بايثون العديد من الطرق لتحويل صور svg إلى png أسهلها استخدام حزمة python_rsvg الموجودة في توزيعة أبنتو وفيدورا (صعب إيجادها خارجهما بسبب أنها جزء من مشروع gnome-python-desktop)، وهذا مثال بسيط على استخدامها حيث أن filename هو اسم ملف svg: import cairo import rsvg img = cairo.ImageSurface(cairo.FORMAT_ARGB32, 640,480) ctx = cairo.Context(img) handle= rsvg.Handle(None, str(<svg data>)) handle.render_cairo(ctx) img.write_to_png("svg.png") توجد طريقة أخرى للتحويل باستخدام دالة cairosvg، فلو افترضنا أن الشيفرة SVG موجودة في متغير code فستكون عملية تحويله كالتالي: import cairosvg pngout = open('output.png','w') cairosvg.svg2png(bytestring=code,write_to=pngout) pngoutout.close() اقتباس
السؤال
TheBrain
لدي صور ذات امتداد svg فما الطريقة الصحيحة لتحويلها إلى png عن طريق استخدام لغة بايثون؟ هل يجب علي استخدام مكتبة pyCairo؟ حفظت صورة svg في سلسلة نصية.
1 جواب على هذا السؤال
Recommended Posts
انضم إلى النقاش
يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.