Форум программистов, компьютерный форум, киберфорум
DataLife Engine (DLE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/19: Рейтинг темы: голосов - 19, средняя оценка - 4.89
0 / 0 / 0
Регистрация: 12.07.2012
Сообщений: 4

Как вывести в fullstory.tpl картинку с надписью

12.07.2012, 16:55. Показов 4159. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
PHP
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
$im_text='привет';
// Преобразование Windows 1251 -> Unicode
  function win2uni($s)
  {
    $s = convert_cyr_string($s,'w','i'); // преобразование win1251 -> iso8859-5
    // преобразование iso8859-5 -> unicode:
    for ($result='', $i=0; $i<strlen($s); $i++) {
      $charcode = ord($s[$i]);
      $result .= ($charcode>175)?"&#".(1040+($charcode-176)).";":$s[$i];
    }
    return $result;
  }
  //=========================================================
 
  define('WIDTH', 200);
  define('HEIGHT', 60);
  define('FONT_NAME', 'arial.ttf');
  define('FONT_SIZE', 20);
 
  $image = imagecreatetruecolor(WIDTH,HEIGHT)
    or die('Cannot create image');
 
  // Не забываем преобразовать текст в кодировку Unicode
  //$text = win2uni($row['short_story']);
  $text = win2uni($im_text);
 
  $coord = imagettfbbox(
     FONT_SIZE,  // размер шрифта
     0,          // угол наклона шрифта (0 = не наклоняем)
     FONT_NAME,  // имя шрифта, а если точнее, ttf-файла
     $text       // собственно, текст
     );
 
  /* Функция imagettfbbox возвращает нам массив из восьми элементов,
     содержащий всевозможные координаты минимального прямоугольника,
     в который можно вписать данный текст. Индексы массива
     удобно обозначить на схеме в виде координат (x,y):
 
     (6,7)           (4,5)
       +---------------+
       |Всем привет! :)|
       +---------------+
     (0,1)           (2,3)
 
     Число элементов массива может на первый взгляд показаться избыточным,
     но не следует забывать о возможности вывода текста под произвольным
     углом.
 
     По этой схеме легко вычислить ширину и высоту текста:
  */
  $width = $coord[2] - $coord[0];
  $height = $coord[1] - $coord[7];
 
  // Зная ширину и высоту изображения, располагаем текст по центру:
 
  $X = (WIDTH - $width) / 2;
  $Y = (HEIGHT + $height) / 2;
 
  imagettftext(
    $image,      // как всегда, идентификатор ресурса
    FONT_SIZE,   // размер шрифта
    0,           // угол наклона шрифта
    $X, $Y,      // координаты (x,y), соответствующие левому нижнему
                 // углу первого символа
    0xFFFFFF,    // цвет шрифта
    FONT_NAME,   // имя ttf-файла
    $text
  );
 
  header('Content-type: image/png');
  imagepng($image);
  imagedestroy($image);
Нашел такой скрипт, он из текста делает картинку, нужно чтобы вместо $im_text он обрабатывал $row['short_story'] из show.full.php и изображение выводилось в полной новости.
Если в fullstory.tpl вставить так <img src="/engine/modules/testimg.php" /> все работает, но не удается передать ему переменную $row['short_story'], если скрипт вставляю в show.full.php, то вместо странички полной новости грузится пустая картинка без текста. Посоветуйте, как решить эту проблему.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
12.07.2012, 16:55
Ответы с готовыми решениями:

Разные шаблоны FullStory.tpl
Всем приветы. Подскажите, пожалуйста, как для разных категорий сделать разные шаблоны Полной новости? Заранее благодарен.

Как закрепить картинку за надписью, на резиновом сайте?
Всем привет, Подскажите, возможно ли закрепить рисунок за текстом, на резиновом сайте - чтобы при масштабировании на любых экранах...

Как вывести tpl шаблон в шаблоне
Прошу помощи, прочитал статью http://rgblog.ru/page/template попробовал вывести шаблон, у меня все получилось, но не могу понять как...

4
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
12.07.2012, 17:16
с 377 строки начинается парсинкг тэгов
PHP
1
2
3
4
...
            $tpl->set( '{editor}', $row['editor'] );
            $tpl->set( '{edit-reason}', $row['reason'] );
...
придумайте свой тэг , вставте его в шаблон и запарсите вместе с остальными на свою переменную
PHP
1
$im_text= isset($_GET['im']) ? $_GET['im'] : null;
и обращатся значит через гет параметр
PHP
1
<img src="/engine/modules/testimg.php?im=$ur_variable" />
0
0 / 0 / 0
Регистрация: 12.07.2012
Сообщений: 4
12.07.2012, 18:29  [ТС]
Пытаюсь понять
php владею далеко не идеально
PHP
1
 $tpl->set( '{im}', $row['short_story' );
нужно добавить в show.full.php
{im} в fullstory.tpl
PHP
1
$im_text= isset($_GET['im']) ? $_GET['im'] : null;
нужно добавить в engine/modules/testimg.php (в сам скрипт)

HTML5
1
<img src="/engine/modules/testimg.php?im=$ur_variable" />
в fullstory.tpl . Я не совсем понимаю принцип работы. Так не работает. Буду очень признателен, если разжуете мне что к чему.
0
 Аватар для crautcher
2450 / 2301 / 597
Регистрация: 27.05.2011
Сообщений: 7,845
12.07.2012, 18:47
Цитата Сообщение от Loksanya Посмотреть сообщение
$tpl->set( '{im}', $row['short_story' );
да это верно , ток ескобку закройте а то ошибка будет

вы создали тэг который будет заменятся , значит надо его вставить в шаблон fullstory.tpl туда куда хотите картинку
PHP
1
<img src="/engine/modules/testimg.php?im={im}" />
затем зайдите в полную новость и посматрите сорцы страницы , кстате а что там находится $row['short_story'] ? , если чтото что содержит пробелы надо делать тогда
PHP
1
$tpl->set( '{im}', urlencode($row['short_story']) );
затем если будет ссылка верная допиливаем ваш скрипт
Цитата Сообщение от Loksanya Посмотреть сообщение
нужно чтобы вместо $im_text он обрабатывал $row['short_story']
заменив на тот кусочек кода мы передаём вашему скрипту то , что идет после знака вопроса
1
0 / 0 / 0
Регистрация: 12.07.2012
Сообщений: 4
12.07.2012, 19:16  [ТС]
HTML5
1
<img src="/engine/modules/testimg.php?im=%D1%E5%F0%E4%F6%E5+%ED%E0+%F0%E5%EC%EE%ED%F2%E5" />
вот такая ссылка в fullstory.tpl получается , тут нормально, но картинка не отображается

Добавлено через 10 минут
Прошу прощения, все работает, недоглядел немного, crautcher - Вам респект.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.07.2012, 19:16
Помогаю со студенческими работами здесь

Как убрать Fullstory в dle?
Привет всем. Хочу сделать сайт по анекдотам, статусам, тостам и подобной фигне на dle. Создал кучу категорий и подкатегорий для них. При...

Ошибки в файлах шаблонах header.tpl, footer.tpl
При установке нового шаблона появились косяки, а именно появились ошибки в файлах шаблонах header.tpl, footer.tpl должен по дефолту...

Как подключить к {custom template}, состоящию из картинки и заголовка - файл fullstory ?
Как подключить к {custom template}, состоянию из картинки и заголовка - файл fullstory.tpl? Как определить, где fullsstory будет...

Как сделать для определенных категорий свои шаблоны shortstory и fullstory?
как сделать для определенных категорий свои шаблоны shortstory и fullstory? есть категории авторы,мероприятия,новости,статьи,видео. для...

Как вывести картинку?
Помогите.Создаю текстовою игру но хочу рядом с текстом выводить картинку.Как это сделать?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Основы отладки веб-приложений на SDL3 по USB и Wi-Fi, запущенных в браузере мобильных устройств
8Observer8 07.02.2026
Содержание блога Браузер Chrome имеет средства для отладки мобильных веб-приложений по USB. В этой пошаговой инструкции ограничимся работой с консолью. Вывод в консоль - это часть процесса. . .
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru