[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Настраиваемые банеры
Xsfd
Есть идея создания настраиваемых банеров для пользователей.
Чтобы пользователь сам выбирал фон, эмблемки которые на банере должны быть и т.п и они менялись подобным образом.
user posted image

user posted image

А потом чтобы этот баннер можно было поставить себе в подпись как png картинку.
Есть какие нибудь уроки по данной проуедуре? Или может подскажет кто с чего начинать.

PHP только начал заниматься, поэтому работу такого плана одному сделать сложно(



Спустя 6 минут, 32 секунды (30.07.2012 - 12:58) DarkLynx написал(а):
Погуглите про библиотеку GD2 на PHP. Это именно та самая библиотека дающая PHP возможность работать с картинками..

Если есть еще подобные библиотеки, я о них не знаю, не пинайте =)

Спустя 1 минута, 7 секунд (30.07.2012 - 12:59) DarkLynx написал(а):
Если Вам будет интересно, могу выложить пример скрипта генератора мемов, сделан он может совсем не профессионально, но выложить могу. Будет от чего отталкиваться.

Спустя 19 минут, 54 секунды (30.07.2012 - 13:19) Xsfd написал(а):
давайте) буду благодарен

Спустя 24 минуты, 31 секунда (30.07.2012 - 13:43) DarkLynx написал(а):
Скрипт имеет весьма ограниченный функционал, потому как это я делал одному человеку, за спасибо и делать что то еще мне попросту было лень.

Скачать

Приведу описание по работе с того форума где я это выкладывал. Может поможет разобраться чутка. Что к чему.


Для начала давайте изменим некоторые настройки. Для этого заходим в файл MemGenerator.php
и в следующих строчках устанавливаем нужные вам значения


private $width = 500; // Ширина мема
private $height = 600; // Высота мема
private $textLen = 25; // Максимальная длина текста

Какое значение на что влияет указано в комментарии. Тут всё понятно.

Далее подключим класс генератора.
Делается это очень и очень просто

include_once 'MemGenerator.php'; 

Что же, класс подключен, можно приступать к работе..
Для начала создадим объект класса

$mem = new MemGenerator(); 

Объект создан. Теперь нам доступны методы этого класса.
Давайте зададим фон нашего мема, для этого нужно вызвать метод SetImage(string $imgUrl)
Допустим наш фон лежит в папке images/ в корне скрипта. Задаем фон.

$mem->SetImage('img/IMG2.png'); 

Задали. Отлично. Как я уже говорил, генератор сам подгонит размеры картинки под те которые вы задали в настройках.

Давайте теперь зададим шрифт, которым будет написан наш текст. Делается это так же просто.

$mem->SetFont('optima'); 

Тут я немного разъясню. Во первых на одном уровне с файлом MemGenerator.php должна быть папка font в которую мы помещаем шрифты.
В архиве есть 2 шрифта - Optima и Arial. Если захотите добавьте свои.
Как уже становится понятно, в метод мы передаем название шрифта. Название можно указывать как с расширением .ttf так и без него.

Шрифт задали, давайте теперь установим цвет.

$mem->SetColor('blue'); 

Как я уже писал, предустановлено 5 цветов.
Вот они (Название -> значение)
Черный -> black
Белый -> white
Красный -> red
Зеленый -> green
Синий -> blue

Цвет задали. Теперь можно и к самому тексту приступить.
Задаем верхний текст

$mem->SetTextTop('Текст вверху'); 

Задаем нижний текст
$mem->SetTextBottom('Текст внизу'); 

Текст задали... Что то забыли... Ах да.. Отступы..
Ну тут тоже все просто

$mem->SetPadding(30, 10); 

А нет, не всё..
Но вообще то всё.. Первое значение, у нас оно равно 30, задает отступ верхнего текста от верхней границы картинки. (ВНИМАНИЕ!! Отступ считается от верхней границы картинки относительно нижней границы текста)
Ну а второе значение соответственно отступ нижнего текста относительно нижней границы картинки..

Всё. Параметры задали пора и приступить к самому главному, создать мем..
Сделать это так же легко как 2 байта переслать

$mem->ShowMem(); 

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

$mem->ShowMem(true, 'mem'); 

и мем сохранится в папку mem... Единственное ограничение... Эта папка уже должна быть создана.. Указывать путь можно любой, но конечная папка ОБЯЗАТЕЛЬНО должна существовать, иначе он ничего не сохранит...




Кстати, если какой нибудь гуру оценит сам код, тоже буду очень благодарен.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.