PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи

Страниц (1): [1]

> Найдено сообщений: 10
lira Отправлено: 17 Декабря, 2012 - 18:18:13 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
Мне таки удалось нарисовать рамку ввокруг изображения) Еще мне нужно разместить на изображении длинный текст, который разбивается на подстроки. Подскажите, пожалуйста, как мне рассчитать, где нужно располагать каждую подстроку. Привожу свой код:
PHP:
скопировать код в буфер обмена
  1. <?
  2.         $image = imagecreatetruecolor(370, 460); // для примера создаю изображение 370х460
  3.         $black = imagecolorallocate($image, 0, 0, 0);
  4.         imagefill($image, 0, 0, 0xffffff);
  5.  
  6.         $msg = 'Длинный длинный текст, который будет разбит на  нескольок строк';
  7.         $text = wordwrap(iconv("CP1251","UTF-8",urldecode($msg)), 60, "\n", 1); //перенос строки
  8.         $arText=explode("\n", $text);
  9.         $font = 'arial.ttf';
  10.         $textSize = 24;
  11.        
  12.         $i=0;
  13.         foreach ($arText as $nText)
  14.         {
  15.                 $bbox[$i] = imagettfbbox($textSize, 0, $font, $nText);
  16.                 // координаты для X и Y
  17.                 $ht = $bbox[$i][1]-$bbox[$i][7]; // высота текста
  18.                 $x[$i] = $bbox[$i][0] + (imagesx($image) / 2) - ($bbox[$i][4] / 2) - 5; // центрирование текста
  19.                 $y[$i] = $bbox[$i][7] + (imagesy($image)*3/4) - ($bbox[$i][5] / 2);
  20.                 imagefttext($image, $textSize, 0, $x[$i], $y[$i], $black, $font, $txt);
  21.                
  22.                 $i++;
  23.         }
  24.        
  25.         // вывод
  26.         $filename = md5(uniqid());
  27.         imagejpeg($image, $filename .'.jpg', 100);
  28.         imagedestroy($img_frame);
  29.         ?>
lira Отправлено: 06 Декабря, 2012 - 21:48:19 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
LIME пишет:
остаток это же и есть недостающие пикселя
логично?

Да) сама я не сообразила. Спасибо за помощь)
lira Отправлено: 06 Декабря, 2012 - 20:35:33 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
Как именно рассчитать нужный размер?
lira Отправлено: 06 Декабря, 2012 - 20:22:27 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
LIME пишет:
не суть важно перерисовать имагу или стилями ширину менять
главное чтоб в ней было целое количество отрезков рамы

Вот в этом загвоздка. Может есть идеи, как это можно рассчитать?
lira Отправлено: 06 Декабря, 2012 - 20:13:39 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
DelphinPRO пишет:
Почему не решить эту проблему (наложение рамки) cредствами html+css? По-моему это проще и гибче

Потому что мне нужно сохранить в бд полученное изображение с рамкой и отправить его получателю
lira Отправлено: 06 Декабря, 2012 - 14:41:13 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
LIME пишет:
не могу
но поясню
ширина маги - 2*ширину уголка должна делиться на ширину отрезка без остатка
($img-2*$corner)%$otr==0
иначе менять размер

Большое спасибо Улыбка Буду разбираться)
lira Отправлено: 06 Декабря, 2012 - 14:30:54 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
LIME пишет:
ввести дискретизацию размера имаги

Не могли бы вы привести небольшой пример?
lira Отправлено: 06 Декабря, 2012 - 14:19:01 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
LIME пишет:
правильно нарезать

Как надо правильно нарезать? У меня два фрагмента - уголок и кусок верхней рамки (один сегмент узора, т.к. узор повторяющийся).
lira Отправлено: 06 Декабря, 2012 - 13:18:14 • Тема: Рамка для изображения • Форум: Графика в PHP

Ответов: 24
Просмотров: 10191
Добрый день!
Подскажите, пожалуйста, как "состыковать" фрагменты рамки. Ведь рамка имеет узор, и я не знаю, как "подогнать" рисунок.
Я сначала накладываю рамку по периметру изображения, затем ставлю уголки рамки. При этом узор рамки не состыкуется. Подскажите, как быть в данной ситуации?

Страниц (1): [1]
Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB