Ваш надежный партнер в интернете http://www.rucable.net/

Хостинг в Германии, выделенные сервера , виртуальный хостинг, регистрация доменов. Управление DNS в реальном времени.
Ваш надежный партнер в интернете www.rucable.net

Арендовать сервер


Вернуться на главную - Обзор статей
 Полезные статьи :: Создание изображений в GD с помошью PERL

В этой статье я постараюсь разобрать создание изображений в библиотеке GD с помощью PERL интерпретатора. Для того чтобы убедиться, что библиотека GD установлена на Вашем сервере, создайте простой скрипт, с названием test.pl

#!/usr/bin/perl
print "Content-type: text/html\n\n";
use GD;
1;

Сохраните файл, убедитесь что он имеет права на запуск(chmod +x test.pl), и далее попробуйте запустить этот скрипт через Shell

./test.pl
                    

или в строке браузера

http://www.other-host.ru/test.pl
                    

Если скрипт выдал пустую страничку, то у Вас установленна библиотека GD и можно продолжить дальше. Если все же появились собщения, примерно такого вида:

Can't locate GD.pm in @INC (@INC contains:
/usr/local/lib/perl5/site_perl/5.8.5/mach
/usr/local/lib/perl5/site_perl/5.8.5
/usr/local/lib/perl5/site_perl
/usr/local/lib/perl5/5.8.5/BSDPAN
/usr/local/lib/perl5/5.8.5/mach
/usr/local/lib/perl5/5.8.5 .) at ./test.pl line 3.
BEGIN failed--compilation aborted at ./test.pl line 3.
                    

Это говорит о том, что требуется установить вышеназванную библиотеку на сервер. Так как эта библиотека требует так же другие библиотеки, Вам необходимо просить об установке GD Вашего системного администратора.

Создание изображения в GD

Мы попробуем создать простое изображение, и залить его например белым цветом:

#!/usr/bin/perl
use strict;
use GD;
#инициализируем переменные
my ($img, $red, $blue, $white, $black);

#Создаем новую картинку с размерами 100x100 (width X height);
$img = new GD::Image(100,100);

#Создаем белый цвет. Он нужен для работы (R,G,B)
$white = $img->colorAllocate(255,255,255);

#Создаем красный цвет (R,G,B)
$red = $img->colorAllocate(255,0,0);

#Создаем синий цвет (R,G,B)
$blue = $img->colorAllocate(0,0,255);

#Создаем черный цвет (R,G,B)
$black = $img->colorAllocate(0,0,0);

#Рисуем окантовку по краю квадрата синего цвета
$img->rectangle(0,0,99,99,$blue);

#Заливаем квадрат белым цветом
$img->fill(50,50,$white);

#Выводим изображение в браузер
binmode STDOUT;
print "Content-type: image/png\n\n";
print $img->png;
exit;
                    

У нас получится следующая картинка: http://www.rucable.net/cgi-bin/gd-image-test.pl

Теперь давайте сделаем надпись на этой картинке:

#!/usr/bin/perl
use strict;
use GD;
#инициализируем переменные
my ($img, $red, $blue, $white, $black, $green);

#Создаем новую картинку с размерами 100x100 (width X height);
$img = new GD::Image(100,100);
$white = $img->colorAllocate(255,255,255);
$red = $img->colorAllocate(255,0,0);
$blue = $img->colorAllocate(0,0,255);
$green = $img->colorAllocate(0,255,0);
$black = $img->colorAllocate(0,0,0);
$img->rectangle(0,0,99,99,$blue);
$img->fill(50,50,$white);

#Пишем фразу Hello world
$img->string(GD::Font->Tiny,36,15,'Hello world!', $black);
binmode STDOUT;
print "Content-type: image/png\n\n";
print $img->png;
exit;
                    
У нас получится следующая картинка: http://www.rucable.net/cgi-bin/gd-image-test-with-text.pl
Дополнительные размеры шрифтов:

Просто добавьте в код после #Пишем фразу Hello world

#Giant, Large, MediumBold, Small Tiny.
$img->string(GD::Font->Tiny,10,10,'Tiny FONT', $red);
$img->string(GD::Font->Large,10,20,'Large FONT', $black);
$img->string(GD::Font->MediumBold,10,40,'MediumBold', $blue);
$img->string(GD::Font->Small,10,55,'Small FONT', $black);
$img->string(GD::Font->Giant,10,75,'Giant FONT', $green);

Просмотрим изображение? http://www.rucable.net/cgi-bin/gd-image-test-with-text-advanced.pl

Стало интересно как создавать изображения?
Читайте далее о других опциях GD библиотеки через шелл набрав команду #man GD
так же можно посетить OnLine версию справки GD библиотеки от CPAN

К справке: мы предоставляем хостинг с предустановленными опциями GD, в чем Вы уже убедились просмотрев выше картинки созданные на этом сервере. Все наши сервера, которые обслуживают виртуальный хостинг, имеют предустановленное программное обеспечение библиотек PERL для создания изображений в GD.

Текущая версия PERL: http://www.rucable.net/cgi-bin/test-perl-version.pl This is perl, v5.8.9 built for amd64-freebsd (with 1 registered patch, see perl -V for more detail) Copyright 1987-2008, Larry Wall Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit. Complete documentation for Perl, including FAQ lists, should be found on this system using "man perl" or "perldoc perl". If you have access to the Internet, point your browser at http://www.perl.org/, the Perl Home Page.


WebMoney, WesternUnion, Банковские переводы в Германию, Contact-sys
Новые сервера Intel Atom

Наши новости



2010.07.20.new

Снижение цен! Больше трафика и новые предложения по аренде серверов CoreQuad!

2010.07.19

1. Снижение цен! Новые предложение по аренде серверов CoreQuad!
2. Больше трафика за те же деньги!

Услуги DNS. 4-й резервный сервер имен заработал в Литве.

2010.04.14

1. Услуги DNS. 4-й резервный сервер имен заработал в Литве.

Для клиентов

Аккаунт через безопасное SSL соединение.

Регистрация нового пользователя
Если Ваш браузер не поддерживает SSL, нажмите сюда

   

 

 |  Актуально |  Услуги |  Справка |  О компании |  Почта клиентов |  Форум |  Общие правила |  Наши клиенты | 
 |  Панель управления |  Полезные статьи |  Связаться с нами |  Распродажи и предложения |  Регистрация доменных имен | 
 |  Карта сайта | 

#Услуги на www.rucable.net #Новости компании #Помощь - FAQ #Статьи для чтения #Связаться с нами
 |  В помощь системному администратору  |  Интернет-аукцион в России  | 
© RuCable - проект Sano media AG 2004-2010
Webmoney Passport