HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > Общие вопросы программирования
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 01.08.2022, 22:23
Roman Grudov
Участник форума
Регистрация: 05.08.2018
Сообщений: 250
С нами: 4091513

Репутация: 98
По умолчанию

Всем привет! Пишу на PHP скрипт, который будет наносить текст на изображение и столкнулся с проблемой, что в моей библиотеке php-image нет форматирования по абзацу.

Цитата:
Сообщение от Спойлер  




На Стеке в разделе Питона прочитал что нужно «разбить его пробелами и вставить пробелы, чтобы заполнить оставшееся пространство»

Цитата:
Сообщение от Спойлер  


Python:





Код:
from
PIL
import
Image
,
ImageDraw
,
ImageFont

font
=
ImageFont
.
truetype
(
"arial.ttf"
,
20
)
text
=
"Lorem ipsum dolor sit amet, consectetur adipiscing elit.\n"
\
"Pellentesque accumsan nec felis ut vulputate."
image_width
=
600
im
=
Image
.
new
(
"RGB"
,
(
image_width
,
80
)
,
"white"
)
d
=
ImageDraw
.
Draw
(
im
)
y
=
10
for
line
in
text
.
split
(
"\n"
)
:
words
=
line
.
split
(
" "
)
words_length
=
sum
(
d
.
textlength
(
w
,
font
=
font
)
for
w
in
words
)
space_length
=
(
image_width
-
words_length
)
/
(
len
(
words
)
-
1
)
x
=
0
for
word
in
words
:
d
.
text
(
(
x
,
y
)
,
word
,
font
=
font
,
fill
=
"black"
)
x
+=
d
.
textlength
(
word
,
font
=
font
)
+
space_length
    y
+=
30


Как на php реализовать этот же код? Или есть какие-то другие решения?
 
Ответить с цитированием

  #2  
Старый 03.08.2022, 18:26
MADELINE
Новичок
Регистрация: 05.08.2018
Сообщений: 11
С нами: 4091513

Репутация: 98
По умолчанию

Для работы с изображениями рекомендуется использовать ImageMagick - https://www.php.net/manual/ru/book.imagick.php
 
Ответить с цитированием

  #3  
Старый 05.08.2022, 12:15
Roman Grudov
Участник форума
Регистрация: 05.08.2018
Сообщений: 250
С нами: 4091513

Репутация: 98
По умолчанию

В личке Телеграмма попросил добавить автора эту функцию.

GitHub - antonlukin/poster-editor: Wrapper for PHP's GD Library for easy image manipulation. Support for scaling multi-line text, shapes, filters and smart resize.

Wrapper for PHP's GD Library for easy image manipulation. Support for scaling multi-line text, shapes, filters and smart resize. - antonlukin/poster-editor

github.com
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.