Hvordan manipulere bilder i Perl

Perl ble bygget for tekst manipulasjon, men det har også eksterne biblioteker for å manipulere rasterbilder. En populær bibliotek som du kan manipulere bilder kalles "gd." Siden GD ikke er skrevet i Perl, må du installere en innfødt bibliotek (en dll på Windows-systemer) og dets perl "bindinger." Dette er relativt enkelt, avhengig av hvilken plattform du bruker.

Bruksanvisning

Installer GD Bruke ActivePerl

1 Installer GD og dets bindinger med ppm kommandoen. Den ppm kommandoen åpner «Perl Package Manager", en Active bestemt pakkebehandler designet for å installere Perl-moduler på systemer med make-kommandoen eller en C-kompilator.

2 Begynn ppm fra kommandolinjen. Dette vil starte et GUI program.

3 Klikk på "Se alle pakker" knappen på verktøylinjen.

4 Søk etter GD i søkeboksen. Høyreklikk på GD-pakken og klikk på "Install".

Installer GD Bruke CPAN

5 Bruk CPAN å installere GD på et Linux-system eller et annet system med merke og en C-kompilator.

6 Installer GD biblioteket på den måten som kreves av din spesielle Perl distribusjon. Dette vil variere avhengig av din distribusjon og er midt i fordelingen docs.

7 Installer GD Perl bindingene ved å starte CPAN og skrive kommandoen "Install GD".

Manipulere bilder i Perl

8 Opprett et nytt bilde å manipulere. Importer GD-modul og deretter opprette et nytt bilde ved å opprette en ny GD :: bildeobjekt. Pass konstruktøren dimensjonene for bildet:
"use GD;$im = new GD::Image(200,200);"

9 Lag noen farger ved å lage noen farge gjenstander og lagre dem i variabler. Farge objekter kan opprettes ved behov, men det er nyttig å ha en mnemonic for fargene du kommer til å bruke:
"$white = $im->colorAllocate(255,255,255);
$black = $im->colorAllocate(0,0,0);
$red = $im->colorAllocate(255,0,0);"

10 Sett en gjennomsiktig farge: "$im->transparent($white);"

11 Tegn en bakgrunn. Siden bildet trenger en bakgrunnsfarge, kan du bruke et fylt rektangel primitiv å trekke en bakgrunnsfarge:
"$im->filledRectangle(0,0,200,200,$white);"

12 Tegn hva du vil. GD biblioteket har en rekke tegning primitiver, fra punkter og linjer til buer, sirkler og polygoner:
"$im->filledRectangle(50,50,150,150,$red);"

1. 3 Utgang filen. Her er filen utgang på stdout, som skal fraktes til en fil, men du kan enkelt utgang til en annen fil håndtak har du åpnet. Kontroller at filen håndtaket er i binærmodus før du skriver ut png fil til det:
"binmode STDOUT;
print $im->png;"

Hint

  • GD kan lage PNG, JPEG og GIF-bilder, samt andre formater.