كيفية تحويل صورة Pyglet إلى صورة PIL؟
-
23-08-2019 - |
سؤال
أريد تحويل كائن pyglet.abstractImage إلى صورة PIL لمزيد من التلاعب هنا هي رموز بلدي
from pyglet import image
from PIL import Image
pic = image.load('pic.jpg')
data = pic.get_data('RGB', pic.pitch)
im = Image.fromstring('RGB', (pic.width, pic.height), data)
im.show()
لكن الصورة الموضحة حدث خطأ. فكيف تحويل صورة من Pyglet إلى PIL بشكل صحيح؟
المحلول
أعتقد أنني أجد الحل
الملعب في Pyglet.AbstractImage مثيل غير متوافق مع PIL، وجدت في Pyglet 1.1 هناك وظيفة ترميز لترميز صورة Pyglet إلى PIL هنا حلقة الوصل إلى المصدر
لذلك يجب تعديل الكود أعلاه لهذا
from pyglet import image
from PIL import Image
pic = image.load('pic.jpg')
pitch = -(pic.width * len('RGB'))
data = pic.get_data('RGB', pitch) # using the new pitch
im = Image.fromstring('RGB', (pic.width, pic.height), data)
im.show()
أنا أستخدم صورة 461x288 في هذه الحالة وتجد أن Pic.Pitch هو -1384
لكن الملعب الجديد هو -1383
نصائح أخرى
هذا مفتوح قائمة الرغبات غرض:
مجردة إلى / من صورة PIS.
لا تنتمي إلى StackOverflow