powered by simpleCommunicator - 2.0.36     © 2025 Programmizd 02
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Phyton создание GIF
5 сообщений из 5, страница 1 из 1
Phyton создание GIF
    #40079730
mmm555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть код
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
from PIL import Image, ImageDraw, ImageFont
import random

images = []


textnew=['Первая строка',
         'Вторая строка',
         'Третья строка',
         'Четвертая строка',
         'Пятая строка',
         'Шестая строка']

for c,value in enumerate(textnew):
    image = Image.new(mode="RGB", size=(320, 320), color="black")
    draw = ImageDraw.Draw(image)
    fnt = ImageFont.truetype('font.ttf', size=20)
    draw.text((0, 20*c), value, fill=(random.randint(0, 255),random.randint(0, 255) , random.randint(0, 255)), font=fnt)
    images.append(image)
    images[c].save('draw-ellipse-rectangle-line'+str(c)+'.jpg', quality=95)

images[0].save("My.gif", save_all=True, append_images=images[1:], duration=100, loop=1, format="GIF")


он создает gif анимированный, каждая строка появляется один раз(потому что пересоздаётся image) , если его преобразовать в
Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
from PIL import Image, ImageDraw, ImageFont
import random

images = []

image = Image.new(mode="RGB", size=(320, 320), color="black")
draw = ImageDraw.Draw(image)
fnt = ImageFont.truetype('font.ttf', size=20)


textnew=['Первая строка',
         'Вторая строка',
         'Третья строка',
         'Четвертая строка',
         'Пятая строка',
         'Шестая строка']

for c,value in enumerate(textnew):

    draw.text((0, 20*c), value, fill=(random.randint(0, 255),random.randint(0, 255) , random.randint(0, 255)), font=fnt)
    images.append(image)
    images[c].save('draw-ellipse-rectangle-line'+str(c)+'.jpg', quality=95)

images[0].save("My.gif", save_all=True, append_images=images[1:], duration=100, loop=1, format="GIF")


gif создаться, но не анимированный, в чем ошибка , мне необходимо чтобы и старые строчки оставались и новые появлялись?
...
Рейтинг: 0 / 0
Phyton создание GIF
    #40079982
iot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iot
Гость
mmm555,

Код: python
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
from PIL import Image, ImageDraw, ImageFont
import random
fnt = ImageFont.truetype('font.ttf', size=20)
textnew=['Первая строка', 'Вторая строка', 'Третья строка', 'Четвертая строка', 'Пятая строка', 'Шестая строка']
images = []
for c,value in enumerate(textnew):
	image = Image.new(mode='RGB', size=(320, 320), color='black')
	draw = ImageDraw.Draw(image)
	draw.text((0, 20*c), value, fill=(random.randint(0, 255), random.randint(0, 255), random.randint(0, 255)), font=fnt)
	images.append(image)
images[0].save('test.gif', save_all=True, append_images=images[1:], duration=100, loop=0, format='GIF')
...
Рейтинг: 0 / 0
Phyton создание GIF
    #40079998
mmm555
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
iot,
Cпасибо за ответ. Первый мой код работает именно также. Почему второй не работает. В итоге мне нужно добиться чтобы и старые строчки было видно и появление новых анимировалось. Сейчас же появляются только новые, старые затираются.
...
Рейтинг: 0 / 0
Phyton создание GIF
    #40080061
iot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iot
Гость
mmm555,

второй ваш вариант не генерит доп фреймы. для видимости всех строк одновременно попробуйте добавить альфа канал во фреймы, сам не делал такого, скорее всего где-то здесь
Код: python
1.
fill=(random.randint(0, 255),random.randint(0, 255) , random.randint(0, 255))

нужно добавить значение прозрачности
...
Рейтинг: 0 / 0
Phyton создание GIF
    #40080067
iot
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
iot
Гость
mmm555,

и второй вариант, возможно как вы пытались, это создание нового фрейма копированием из предыдущего
Код: python
1.
image_next = image_prev.copy()
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Phyton создание GIF
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]