2013-08-24 6 views
2

Я пытался спасти pygame.Surface, но это не позволяет мне, ошибкарассол экономия Pygame поверхности (питон)

TypeError: can't pickle Surface objects

я могу сделать это сохранить поверхности? Или, может быть, есть еще один модуль, который может его сохранить?

ОБЪЯСНЕНИЕ:

a = pygame.Surface((5,5)) 
file = open("hello", "w") 
pickle.dump(a, file) 

У меня есть классы, которые сохраняют в них поверхностях.

+0

Что вы подразумеваете под «сохранением» поверхности? Установить его в переменную? Отправьте код, который дает вам эту ошибку. – scohe001

+3

Вы можете выбрать путь к файлу или ключ к типу загруженных текстур. Вы не хотите/не должны очерчивать фактический объект Surface. – ninMonkey

ответ

2

Как обезьяна сказала: «Вы не хотите мариновать поверхность. Но если вам действительно нужно сохранить содержимое этих поверхностей, используйте функцию pygame.image.save().

Если вы предпочитаете, чтобы ваша поверхность не являлась фактическим файлом изображения (по какой-либо причине), вы можете использовать функцию pygame.image.tostring(), которая позволяет конвертировать содержимое поверхностей в струйный буфер.

+0

Большое спасибо! Это так полезно! –

 Смежные вопросы

  • Нет связанных вопросов^_^