Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Размещение текста ровно по центру
 
 автор: man1   (16.01.2010 в 23:37)   письмо автору
 
 

Привет всем,

Сейчас практикуюсь и пытаюсь написать галлерею для сайта, но все никак не могу решить одну проблему.

Я хочу сделать подпись ко всем своим картинкам на сайте (Допустим: "Мы в лесу" или "Я и моя семья"), чтобы получилось что-то вроде красивой галлереи-альбома,но дело в том, что количество букв и текста на всех картинках разное и текст съезжает.

Как можно разместить текст по центру изображения? Одно время у меня была такая идея: Получаеть размер слова и у множать его на определенный коэфициент (коэфициент = размер одной буквы), но этот вариант тоже не идеален, и все по-прежнему съезжает.

Есть может быть какой-нибудь универсальный способ? Отчего вообще считать, чтобы текст был по центру, а не съежал в право и лево?

  Ответить  
 
 автор: Киналь   (16.01.2010 в 23:43)   письмо автору
 
   для: man1   (16.01.2010 в 23:37)
 

То есть надпись должна быть на самой картинке и являться её частью? Тогда да, надо получать размер слова. "Съезжать" не должно, вы, скорее всего, где-то ошиблись в алгоритме.

  Ответить  
 
 автор: neadekvat   (16.01.2010 в 23:48)   письмо автору
 
   для: man1   (16.01.2010 в 23:37)
 

http://www.php.net/manual/en/function.imagestring.php
читайте комментарий от 28-Oct-2009 03:02

  Ответить  
 
 автор: man1   (19.01.2010 в 14:00)   письмо автору
 
   для: neadekvat   (16.01.2010 в 23:48)
 

Извиняюсь, что раньше не ответил - сессия =)

neadekvat, спасибо за ссылку, очень интересный способ, попробую его.

>То есть надпись должна быть на самой картинке и являться её частью? Тогда да, надо получать размер слова. "Съезжать" не должно, вы, скорее всего, где-то ошиблись в алгоритме.

Киналь, А как Вы предлагаете считать? Просто по моему способу получается, что одно и тоже слово, допустим из пяти букв, имеет разные размеры (пример: пять, шашки), оттого получается смещение либо влево, либо вправо (ведь идет перемножение средней ширины символа на длину букв в слове), а это выглядит криво и некрасиво.

Было бы интересно посмотреть предлагаемый Вами алгоритм.


>Привет. Таблицей не пробовал делать? Не подойдет?
easywind, речь идет о php+gd? Расскажите подробнее..

  Ответить  
 
 автор: sim5   (19.01.2010 в 14:04)   письмо автору
 
   для: man1   (19.01.2010 в 14:00)
 

Речь идет о обычном выравнивании текста по центру средствами CSS, и это можно сделать не обязательно таблицей.

  Ответить  
 
 автор: Киналь   (19.01.2010 в 15:14)   письмо автору
 
   для: sim5   (19.01.2010 в 14:04)
 

Я так понимаю, требуется что-то вроде картинок, генерируемых на http://demotivators.ru.

  Ответить  
 
 автор: sim5   (19.01.2010 в 15:28)   письмо автору
 
   для: Киналь   (19.01.2010 в 15:14)
 

Я об ответе easywind, а что нужно автору, бог его знает.)

  Ответить  
 
 автор: Киналь   (19.01.2010 в 15:13)   письмо автору
 
   для: man1   (19.01.2010 в 14:00)
 

> одно и тоже слово, допустим из пяти букв, имеет разные размеры (пример: пять, шашки)

А-а, точно-точно, забыл об этом. Тогда этот вариант становится громоздким - придётся учитывать разную ширину букв и (sic!) разное расстояние между ними (например, в словах "ТАЛЬ" и "ШАЛЬ" расстояние между первыми двумя буквами разное).
Поищите другие варианты, а этот оставьте, как вариант "в лоб")

  Ответить  
 
 автор: easywind   (19.01.2010 в 22:04)   письмо автору
 
   для: man1   (19.01.2010 в 14:00)
 

хотя тебе не подойдет. тебе нужно чтоб картинку текстом закрыть.

  Ответить  
 
 автор: easywind   (16.01.2010 в 23:49)   письмо автору
 
   для: man1   (16.01.2010 в 23:37)
 

Привет.
Таблицей не пробовал делать? Не подойдет?

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования