Как заполнить пиксель определенным цветом в зависимости от строки в txt-файле, а затем создать изображение с использованием всех пикселей в pygame?

#python #pygame #pygame-surface

Вопрос:

Если мне очень неясно, я имею в виду следующее: у меня есть текстовый файл, и в текстовом файле есть куча строк, которые являются значениями цвета rgb. И затем программа сделает следующее: в первой строке файла txt она сообщит программе, какого размера будет файл (например, в разрешении, а не в гигабайтах и тому подобном). В строке 2 он заполнит первый пиксель изображения (тот, что в левом верхнем углу) значением rgb в строке 1 в текстовом файле. В строке 3 он заполнит пиксель ниже пикселя 1. В строке 4 он заполнит пиксель ниже пикселя 2. В строке 5 и так далее и тому подобное. В конце концов, программа создаст какое-то изображение со всеми этими пикселями.

Теперь мой вопрос: применимо ли это в pygame? Например, со всеми этими пиксельными местами вы можете затем создать поверхность для спрайта? Мы ценим любую помощь!

Ответ №1:

Это вполне возможно сделать.

Вы можете создать a pygame.Surface с заданными размерами, а затем использовать значения других строк во вложенном цикле for, задавая пиксели с помощью surface.set_at((x, y), color) (https://www.pygame.org/docs/ref/surface.html#pygame.Поверхность.set_at)

Однако это будет происходить медленно, особенно для больших поверхностей

применимо ли это в pygame?

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

Если вы добавите что-нибудь о том, какую именно проблему вы пытаетесь решить, делая это, возможно, я могу предложить что-то более конкретное.