한 장의 사진을 찍고, 모든 픽셀을 오른쪽으로 한 픽셀 이동하고, 왼쪽으로 한 개씩 옮기고 싶다고 가정 해 봅니다. 이 코드를 시도 :Perl을 사용하여 이미지의 픽셀 수정하기
my $image_file = "a.jpg";
my $im = GD::Image->newFromJpeg($image_file);
my ($width, $height) = $im->getBounds();
my $outim = new GD::Image($width, $height);
foreach my $x (1..$width)
{
foreach my $y (1..$height)
{
my $index = $im->getPixel($x-1,$y-1);
my ($r,$g,$b) = $im->rgb($index);
my $color = $outim->colorAllocate($r,$g,$b);
$outim->setPixel($x,$y,$color);
}
}
%printing the picture...
그 트릭을하지 않는다; x = 0 또는 y = 0 인 픽셀을 제외한 모든 픽셀을 한 색상으로 그립니다. 내가 어디로 잘못 가고 있니? 워드 프로세서에서
답장을 보내 주셔서 감사합니다. x = 0 또는 y = 0 인 곳은 어디에도 없지만 나머지는 한 색상으로 표시됩니다. 첫 번째 사진은 화려한 색상입니다. – ronash
원본 이미지를 "인쇄"하려 했습니까? 제대로 읽었습니까? –
예, 똑같은 이미지를 인쇄합니다. – ronash