اذهب إلى المحتوى

السؤال

Recommended Posts

  • 0
نشر

يوجد في بايثون العديد من الطرق لتحويل صور 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()

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...