Скрестить/напечатать два текста разных цветов в pillow (Python)
Ситуация такая - у меня есть текст, вводимый пользователем и есть текст генерируемый рандомно. Они разного цвета и поэтому не получится обойтись просто знаком «+»
Цель - напечатать на фото оба эти текста друг за другом, аля второе дополнение первого.
Как это сделать? куски кода ниже, вот их и надо склеить в одну строку
idraw.text((sy, 365), name_one, "black", font=font3, align="left")
idraw.text((sy, 528), name_two, "black", font=font3,align="left")
idraw.text((sk, 365), a, "grey", font=font3)
idraw.text((sk, 528), b, "grey", font=font3)
Ответы (1 шт):
Автор решения: IvnNULL
→ Ссылка
Второй текст можно подвинуть на длину первого. Вычислить ее можно с помощью textlength().
name_one_lenght = idraw.textlength(name_one, font=font3)
name_two_lenght = idraw.textlength(name_two, font=font3)
В координатах второго текста используем координату первого текста и его длину
idraw.text((sy, 365), name_one, "black", font=font3, align="left")
idraw.text((sy, 528), name_two, "black", font=font3, align="left")
idraw.text((sy + name_one_lenght, 365), a, "grey", font=font3)
idraw.text((sy + name_two_lenght, 528), b, "grey", font=font3)