Найти на форуме:
Loading




+ Ответить в теме
Показано с 1 по 6 из 6

Тема: PHP: text to image [РЕШЕНО]

Комбинированный просмотр

  1. #1
    developer
    шахматист
    Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Аватар для Александр

    Регистрация
    16.01.2007
    Адрес
    Germany
    Сообщений
    2,580
    Сказал(а) спасибо
    148
    Поблагодарили 627 раз(а) в 196 сообщениях

    Вопрос PHP: text to image [РЕШЕНО]

    Подскажите как можно перевести текст в картинку, трудность заключается в том что нужно сделать перенос слов и подбор размера шрифта чтоб строка вошла по высоте. Кроме как перебора циклом от большого шрифта к меньшему и подбора слов чтоб они входили по ширине нету варианта?
    Stop Child Abuse


    "Те, кто преуспевает через какое-то время - это те, кто наиболее настойчив при изучении того, что ему подходит больше всего, и затем строго применяет свои методы, даже когда что-то идет не так." Джей Кэппель

    http://www.domotronika.ks.ua

  2. #2
    Завсегдатай Wolfshadow Странник Аватар для Wolfshadow

    Регистрация
    28.06.2009
    Адрес
    Херсон
    Сообщений
    120
    Сказал(а) спасибо
    1
    Поблагодарили 17 раз(а) в 8 сообщениях

    По умолчанию

    То есть есть область картинки фиксированной высоты, есть текст заданной длины, и надо чтобы уместился?

    Если так, то надо, конечно, анализировать текст... Но вообще то если я правильно помню, GD и прочие библиотеки позволяют размер шрифта в пикселях задавать при выводе в картинку...
    Linux, Apache, PHP, MySQL, Javascript, CSS, XHTML
    http://vkontakte.ru/id7182971

  3. #3
    developer
    шахматист
    Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Аватар для Александр

    Регистрация
    16.01.2007
    Адрес
    Germany
    Сообщений
    2,580
    Сказал(а) спасибо
    148
    Поблагодарили 627 раз(а) в 196 сообщениях

    По умолчанию

    Цитата Сообщение от Wolfshadow Посмотреть сообщение
    То есть есть область картинки фиксированной высоты, есть текст заданной длины, и надо чтобы уместился?
    Верно, к примеру есть всего 200px ширины картинки и длинная строчка, нужно эту строчку уместить в эту ширину, и чтоб она осталась в читабельном виде.

    Цитата Сообщение от Wolfshadow Посмотреть сообщение
    Если так, то надо, конечно, анализировать текст... Но вообще то если я правильно помню, GD и прочие библиотеки позволяют размер шрифта в пикселях задавать при выводе в картинку...
    Одним размером шрифта не отделаться(((
    Нужно брать слова по порядку и проверять сколько слов помещается и так набирать каждую строчку, в конце будет известна высота получившегося столбика текста, и если данная высота не будет вписываться в высоту картинки, нужно уменьшить шрифт на единицу и всю процедуру начинать сначала.... или есть другие варианты?
    Stop Child Abuse


    "Те, кто преуспевает через какое-то время - это те, кто наиболее настойчив при изучении того, что ему подходит больше всего, и затем строго применяет свои методы, даже когда что-то идет не так." Джей Кэппель

    http://www.domotronika.ks.ua

  4. #4
    Завсегдатай Wolfshadow Странник Аватар для Wolfshadow

    Регистрация
    28.06.2009
    Адрес
    Херсон
    Сообщений
    120
    Сказал(а) спасибо
    1
    Поблагодарили 17 раз(а) в 8 сообщениях

    По умолчанию

    При условии использования моноширинного шрифта:

    Chars = количество символов в строке (включая пробелы)
    CharRatio = соотношение ширины символа шрифта к высоте символа (для моноширинных шрифтов - величина постоянная)
    Width = заданная ширина рамки в px
    Height = заданная высота рамки в px

    требуется расчитать размер (высоту в пикселях) шрифта CharH, при котором строка полностью помещается в рамку

    верно? :)
    Linux, Apache, PHP, MySQL, Javascript, CSS, XHTML
    http://vkontakte.ru/id7182971

  5. #5
    Программер blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда blex Легенда

    Регистрация
    20.09.2006
    Адрес
    слушаю Русский Рок на online.fm
    Сообщений
    2,658
    Сказал(а) спасибо
    387
    Поблагодарили 2,318 раз(а) в 723 сообщениях

    По умолчанию

    Цитата Сообщение от Wolfshadow Посмотреть сообщение
    При условии использования моноширинного шрифта:
    для моноширинных шрифтов тривиально, для остальных - собери табличку размеров букв для своего шрифта той же ГД циклом по алфавиту для нескольких размеров. в остальном алгоритм тот же.

  6. #6
    developer
    шахматист
    Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Александр Хранитель Аватар для Александр

    Регистрация
    16.01.2007
    Адрес
    Germany
    Сообщений
    2,580
    Сказал(а) спасибо
    148
    Поблагодарили 627 раз(а) в 196 сообщениях

    По умолчанию

    Обошел с другой стороны, php скриптом создавал pdf файл. Всем спасибо.
    Stop Child Abuse


    "Те, кто преуспевает через какое-то время - это те, кто наиболее настойчив при изучении того, что ему подходит больше всего, и затем строго применяет свои методы, даже когда что-то идет не так." Джей Кэппель

    http://www.domotronika.ks.ua

+ Ответить в теме

Метки этой темы

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
Херсонский ТОП   Рейтинг@Mail.ru МЕТА - Украина. Рейтинг сайтов

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112