The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Изменение параметров изображений из скрипта (web image resize cgi)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: web, image, resize, cgi,  (найти похожие документы)
From: Maxim Chirkov <mc@tyumen.ru> Subject: Изменение параметров изображений из скрипта Изменяем размер картинки. Способ изменение размера картинки с помощью утилиты pnmscale: djpeg -pnm -dct float IMAGE.JPG | pnmscale -ysize 150 |\ cjpeg -quality 70 -optimize -progressive -dct float > tumb_IMAGE.JPG Где, IMAGE.JPG - исходное изображение, tumb_IMAGE.JPG - изображение по оси Y уменьшенное до 150 пикселов, по оси X уменьшенно соразмерно. ------------------------------- Использование ImageMagic Утилиты входящие в комплект ImageMagic: convert - преобразование форматов и манипуляции над изображением. identify - получение данных о формате, разрешении и других характеристиках изображения. import - программа для записи образа окна или экрана XWindow в файл. animate - показ группы изобаражений на экране XWindow. montage - создание изображения на основе нескольких картинок (монтаж). mogrify - трансформация изображений. combine - наложение изображений. Все операции могут быть выполнены интерактивно в XWindow с помощью команды display. Примеры: # Преобразуем tiff картинку в PostScript документ формата A4 (картинка будет в левом нижнем углу). convert -page A4+0+0 image.tiff document.ps # На картинке test.jpg сделаем надпись начиная от точки 100x100, синим цветом # шрифтом helvetic "TEST" и запишем в test2.jpg convert -font helvetica -pen blue -draw "text 100,100 TEST" test.jpg test2.jpg # Создадим изображение размером 640x480 и заполним его повторяющимися # картинками bumps.jpg. convert -size 640x480 tile:bumps.jpg tiled.png # Создадим анимированный gif из группы файлов dna.* с задержкой 20/100 сек. convert -delay 20 dna.* dna.gif # Изменим размер картинки до 100x50 и запишем в tumb.jpg convert -geometry 100x50 test.jpg tumb.jpg # Уменьшим размер картинки на 50% и запишем в tumb.jpg convert -geometry 50% test.jpg tumb.jpg # Вырежем кусок размером 100x50 из файла test.jpg начиная с позиции 200x200 # и запишем результат в tumb.jpg convert -crop 100x50+200+200 test.jpg tumb.jpg ------------------------------- Работа с изображениями в Perl (пакет PerlMagick). Для использования всех манипуляций над изображением в perl скриптах, должен использоваться модуль Image::Magick. Пример скрипта использующего Image::Magick познакомит с базовой технологией использования пакета: ---------- #!/usr/local/bin/perl # Читаем 3 gif картинки, вырезаем кусок в каждой и записываем результат # как анимированный gif файл. use Image::Magick; my($q, $x); $q = Image::Magick->new; $x = $q->Read('girl.gif', 'logo.gif', 'rose.gif'); warn "$x" if "$x"; $x = $q->Crop(geometry=>'100x100+100+100'); warn "$x" if "$x"; $x = $q->Write('x.gif'); warn "$x" if "$x"; ------------- ------------- #!/usr/local/bin/perl use Image::Magick; my($q, $r); $q = new Image::Magick; $q->Read('x1.gif'); $q->Read('j*.jpg'); $q->Read('k.miff[1,5,3]'); $q->Contrast; for ($x = 0; $q->[x]; $x++) { $q->[x]->Frame('100x200') if $q->[x]->Get('magick') eq 'GIF'; undef $q->[x] if $q->[x]->Get('columns') < 100; } $r = $q->[1]; $r->Draw(pen=>'red', primitive=>'rectangle', points=>20,20 100,100'); $r->Draw(pen=>'red', primitive=>'rectangle', points=>'20,20 100,100 40,40 200,200 60,60 300,300'); $s = $q->Montage; undef $q; $s->Write('x.miff'); $q = Image::Magick->new; $q->Set(size=>'100x100'); $q->ReadImage('xc:white'); $q->Set('pixel[49,49]'=>'red'); $q->Quantize(colorspace=>'gray'); --------------

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

 Добавить комментарий
Имя:
E-Mail:
Заголовок:
Текст:




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру