Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Perl: Общие вопросы > GD gif анимация


Автор: frenkys 1.4.2006, 01:52
Люди у кого нибудть получилось?

создать гиф анимашку


вот http://cpan.uwinnipeg.ca/htdocs/GD-Image-AnimatedGif/GD/Image/AnimatedGif.pm.html

Покажите кто-нибудь рабочй код smile а то меня почемуто все время пустая картинка. smile

Автор: nitr 14.4.2006, 02:25
вот smile
Код

#!/usr/bin/perl -w
use strict;
use GD;

print "Content-type: image/gif\n\n";

my $str = "Perl!!!";
my $image = GD::Image->new(120, 30);
$image->colorAllocate(255, 255, 255);

my $gifdata = $image->gifanimbegin(1, 0);
foreach (1..length($str)) {
  my $frame = GD::Image->new($image->getBounds);
  $frame->colorAllocate(255, 255, 255);
  $frame->string(gdSmallFont, 2, 4, substr($str, 0, $_), $frame->colorAllocate(255, 0, 0));
  $gifdata .= $frame->gifanimadd(1);
}
$gifdata .= $image->gifanimend;
print $gifdata;


ну, а если файлик, то вот
Код

#!/usr/bin/perl -w
use strict;
use GD;

my $str = "Perl!!!";
my $image = GD::Image->new(120, 30);
$image->colorAllocate(255, 255, 255);

my $gifdata = $image->gifanimbegin(1, 0);
foreach (1..length($str)) {
  my $frame = GD::Image->new($image->getBounds);
  $frame->colorAllocate(255, 255, 255);
  $frame->string(gdSmallFont, 2, 4, substr($str, 0, $_), $frame->colorAllocate(255, 0, 0));
  $gifdata .= $frame->gifanimadd(1);
}
$gifdata .= $image->gifanimend;
open OUT, ">my_new.gif";
binmode OUT;
print OUT $gifdata;
close OUT;


И не надо говорить, что это можно оптимизировать... я знаю ;) Человек ждал ответа с начала апреля smile
И сложно создавать так... я так и не понял в чём глюк... думаю в специфике GIF-формата, для примера вместо Perl!!! вставь Perl FOREVER

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)