Как написать многострочный текст на подушке? ⇐ Python
Как написать многострочный текст на подушке?
Я пытаюсь преобразовать один длинный текст в многострочный. Я написал некоторый код, и он в основном работает. Но у меня есть некоторые проблемы с расчетом ширины линии. Потому что очереди становятся все короче и короче. Вероятно, вызвано lastCalculatedWidth или resultTextLength или обоими. Я пробовал много вещей, но я очень запутался и хочу решить эту проблему как можно скорее.
[img]https://i .stack.imgur.com/BEcmh.png [/img]
text = "Lorem ipsum Pain сидит с, consectetur adipiscing элита. Donec augue leo, pulvinar maaaıs sagittis сидит с грустной маврикийской детской. С mauritius quam, faucibus id pretium нет, у Вариуса есть лев. result_text = "" messageBreakLineIndexes = [] рассчитанные слова = 0 messageLineWidth = draw.textLength (текст, шрифт = шрифт) результатТекстДлинга = 0 последнийCalculatedWidth = 0 расчетПереключатель = Истина в то время как вычисляемые слова < len(text.split()): result_text += text.split()[calculatedWords] + resultTextLength += draw.textLength(text.split() [calculatedWords], шрифт = шрифт); если resultTextLength > img.width - 60: result_text = result_text.rstrip (); result_text = result_text.rsplit(" ", 1)[0] messageBreakLineIndexes.append(len(result_text)); рассчитанные слова -= resultTextLength -= draw.textLength (result_text.rstrip(), шрифт = шрифт) -lastCalculatedWidth LastCalculatedWidth = draw.textlength(result_text.rstrip(), шрифт = шрифт); рассчитанные слова += 1 печать (сообщениеBreakLineIndexes). for in in range(len(messageBreakLineIndexes)): index = messageBreakLineIndexes . текст_результата = текст_результата[:индекс+i] + "\n" + текст_результата[индекс+i:] draw.text(позиция_текста, текст_результата, шрифт=шрифт, заливка=цвет_текста);
Я пытаюсь преобразовать один длинный текст в многострочный. Я написал некоторый код, и он в основном работает. Но у меня есть некоторые проблемы с расчетом ширины линии. Потому что очереди становятся все короче и короче. Вероятно, вызвано lastCalculatedWidth или resultTextLength или обоими. Я пробовал много вещей, но я очень запутался и хочу решить эту проблему как можно скорее.
[img]https://i .stack.imgur.com/BEcmh.png [/img]
text = "Lorem ipsum Pain сидит с, consectetur adipiscing элита. Donec augue leo, pulvinar maaaıs sagittis сидит с грустной маврикийской детской. С mauritius quam, faucibus id pretium нет, у Вариуса есть лев. result_text = "" messageBreakLineIndexes = [] рассчитанные слова = 0 messageLineWidth = draw.textLength (текст, шрифт = шрифт) результатТекстДлинга = 0 последнийCalculatedWidth = 0 расчетПереключатель = Истина в то время как вычисляемые слова < len(text.split()): result_text += text.split()[calculatedWords] + resultTextLength += draw.textLength(text.split() [calculatedWords], шрифт = шрифт); если resultTextLength > img.width - 60: result_text = result_text.rstrip (); result_text = result_text.rsplit(" ", 1)[0] messageBreakLineIndexes.append(len(result_text)); рассчитанные слова -= resultTextLength -= draw.textLength (result_text.rstrip(), шрифт = шрифт) -lastCalculatedWidth LastCalculatedWidth = draw.textlength(result_text.rstrip(), шрифт = шрифт); рассчитанные слова += 1 печать (сообщениеBreakLineIndexes). for in in range(len(messageBreakLineIndexes)): index = messageBreakLineIndexes . текст_результата = текст_результата[:индекс+i] + "\n" + текст_результата[индекс+i:] draw.text(позиция_текста, текст_результата, шрифт=шрифт, заливка=цвет_текста);
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Как объединить несколько p-тегов, содержащих многострочный текст (рядом) в CSS?
Anonymous » » в форуме CSS - 0 Ответы
- 33 Просмотры
-
Последнее сообщение Anonymous
-