módulo gd
O módulo gd é un módulo para o procesamento de imaxes. Ofrece as funcións de creación, operación e almacenamento de imaxes, e ofrece unha gran cantidade de cores, filtros, debuxos e outras operacións relacionadas.
Aquí tes un código de mostra que usa o módulo gd para crear e manipular unha imaxe:
1
2
3
4
5
6
7
8
9
10var gd = require('gd');
var img = gd.create(440, 240); // create a 440x240 truecolor image
var r = img.colorAllocate(255, 0, 0); // allocate two colors
var b = img.colorAllocate(0, 0, 255);
img.rectangle(40, 40, 50, 50, r); // draw a rectangle
img.filledEllipse(80, 100, 30, 50, b); // fill a ellipse
var data = img.getData(gd.PNG); // save image as PNG data
Neste exemplo, primeiro usamos o método create() para crear unha imaxe TRUECOLOR de 440 x 240, e usamos o método colorAllocate() para asignar dúas cores, despois usamos o método rectangle() para debuxar un rectángulo e debuxamos unha elipse chea e finalmente use o método getData() para gardar a imaxe como datos binarios en formato PNG.
función estática
create
Crea unha nova imaxe
1
2
3static Image gd.create(Integer width,
Integer height,
Integer color = gd.TRUECOLOR) async;
Parámetros de chamada:
- width: Número enteiro, especifique o ancho da imaxe
- height: Número enteiro, especifique a altura da imaxe
- color: Número enteiro, especifica o tipo de imaxe, os valores permitidos songd.TRUECOLORougd.PALETTE
Resultados de devolución:
- Image, devolve o obxecto de imaxe creado correctamente
load
Descodifica a imaxe a partir de datos de formato
1static Image gd.load(Buffer data) async;
Parámetros de chamada:
- data:Buffer, dados os datos da imaxe descodificada
Resultados de devolución:
- Image, devolve o obxecto de imaxe descodificado correctamente
Decodifica a imaxe do obxecto de fluxo
1static Image gd.load(SeekableStream stm) async;
Parámetros de chamada:
- stm:SeekableStream, o obxecto de fluxo onde se atopan os datos da imaxe indicados
Resultados de devolución:
- Image, devolve o obxecto de imaxe descodificado correctamente
Descodificar unha imaxe do ficheiro especificado
1static Image gd.load(String fname) async;
Parámetros de chamada:
- fname: Cadea, especifique o nome do ficheiro
Resultados de devolución:
- Image, devolve o obxecto de imaxe descodificado correctamente
rgb
Xera cores combinadas a partir de compoñentes de cor rgb
1
2
3static Integer gd.rgb(Integer red,
Integer green,
Integer blue);
Parámetros de chamada:
- red: Número enteiro, compoñente vermello, intervalo 0-255
- green: Número enteiro, compoñente verde, intervalo 0-255
- blue: Número enteiro, compoñente azul, intervalo 0-255
Resultados de devolución:
- Integer, devolve a cor combinada
rgba
Xera cores combinadas a partir de compoñentes de cor rgba
1
2
3
4static Integer gd.rgba(Integer red,
Integer green,
Integer blue,
Number alpha);
Parámetros de chamada:
- red: Número enteiro, compoñente vermello, intervalo 0-255
- green: Número enteiro, compoñente verde, intervalo 0-255
- blue: Número enteiro, compoñente azul, intervalo 0-255
- alpha: Número, compoñente transparente, intervalo 0,0-1,0
Resultados de devolución:
- Integer, devolve a cor combinada
hsl
Xera cores combinadas a partir de compoñentes de cor hsl
1
2
3static Integer gd.hsl(Number hue,
Number saturation,
Number lightness);
Parámetros de chamada:
- hue: Número, compoñente de ton, intervalo 0-360
- saturation: Número, compoñente de saturación, intervalo 0,0-1,0
- lightness: Número, compoñente de brillo, intervalo 0,0-1,0
Resultados de devolución:
- Integer, devolve a cor combinada
hsla
Xera cores combinadas a partir de compoñentes de cor hsla
1
2
3
4static Integer gd.hsla(Number hue,
Number saturation,
Number lightness,
Number alpha);
Parámetros de chamada:
- hue: Número, compoñente de ton, intervalo 0-360
- saturation: Número, compoñente de saturación, intervalo 0,0-1,0
- lightness: Número, compoñente de brillo, intervalo 0,0-1,0
- alpha: Número, compoñente transparente, intervalo 0,0-1,0
Resultados de devolución:
- Integer, devolve a cor combinada
hsb
Xera cores combinadas a partir de compoñentes de cor hsb
1
2
3static Integer gd.hsb(Number hue,
Number saturation,
Number brightness);
Parámetros de chamada:
- hue: Número, compoñente de ton, intervalo 0-360
- saturation: Número, compoñente de saturación, intervalo 0,0-1,0
- brightness: Número, compoñente de brillo, intervalo 0,0-1,0
Resultados de devolución:
- Integer, devolve a cor combinada
hsba
Xera cores combinadas a partir de compoñentes de cor hsba
1
2
3
4static Integer gd.hsba(Number hue,
Number saturation,
Number brightness,
Number alpha);
Parámetros de chamada:
- hue: Número, compoñente de ton, intervalo 0-360
- saturation: Número, compoñente de saturación, intervalo 0,0-1,0
- brightness: Número, compoñente de brillo, intervalo 0,0-1,0
- alpha: Número, compoñente transparente, intervalo 0,0-1,0
Resultados de devolución:
- Integer, devolve a cor combinada
color
Xera cores combinadas a partir dunha cadea
1static Integer gd.color(String color);
Parámetros de chamada:
- color: Cadea, unha cadea que especifica a cor, como: "#ff0000", "ff0000", "#f00", "f00"
Resultados de devolución:
- Integer, devolve a cor combinada
constante
NONE
Formato da imaxe constante, que indica que a fonte actual da imaxe é descoñecida
1const gd.NONE = 0;
JPEG
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato jpeg
1const gd.JPEG = 1;
GIF
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato gif
1const gd.GIF = 2;
PNG
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato png
1const gd.PNG = 3;
TIFF
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato tiff
1const gd.TIFF = 4;
BMP
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato bmp
1const gd.BMP = 5;
WEBP
Constante de formato de imaxe, que indica que a fonte actual da imaxe son datos en formato webp
1const gd.WEBP = 6;
TRUECOLOR
Constante de tipo de imaxe, que indica que a imaxe actual é unha imaxe en cor real
1const gd.TRUECOLOR = 0;
PALETTE
Constante de tipo de imaxe, que indica que a imaxe actual é unha imaxe de paleta
1const gd.PALETTE = 1;
ARC
Estilo de debuxo sectorial, debuxa un arco que une os puntos de inicio e final
1const gd.ARC = 0;
CHORD
Estilo de debuxo sectorial, debuxa unha liña recta que une os puntos de orixe, inicio e final
1const gd.CHORD = 1;
NOFILL
Estilo de debuxo sectorial, debuxa un sector sen recheo
1const gd.NOFILL = 2;
EDGED
Estilo de debuxo sectorial, debuxa un arco que une o punto inicial e o punto final e unha liña recta que une a orixe
1const gd.EDGED = 4;
HORIZONTAL
Dirección de espello, procesamento de espello horizontal
1const gd.HORIZONTAL = 1;
VERTICAL
Dirección do espello, procesamento do espello vertical
1const gd.VERTICAL = 2;
BOTH
Dirección de espello, procesamento de espello horizontal e vertical
1const gd.BOTH = 3;
LEFT
Dirección de rotación, xira á esquerda
1const gd.LEFT = 1;
RIGHT
Dirección de rotación, xira á dereita
1const gd.RIGHT = 2;
MEAN_REMOVAL
Tipo de filtro: use un método de eliminación medio para conseguir un efecto de contorno
1const gd.MEAN_REMOVAL = 0;
EDGEDETECT
Tipo de filtro: use a detección de bordos para resaltar os bordos da imaxe
1const gd.EDGEDETECT = 1;
EMBOSS
Tipo de filtro: imaxe en relevo
1const gd.EMBOSS = 2;
SELECTIVE_BLUR
Tipo de filtro: Imaxe borrosa
1const gd.SELECTIVE_BLUR = 3;
GAUSSIAN_BLUR
Tipo de filtro: imaxe borrosa con algoritmo gaussiano
1const gd.GAUSSIAN_BLUR = 4;
NEGATE
Tipo de filtro: inverte todas as cores da imaxe
1const gd.NEGATE = 5;
GRAYSCALE
Tipo de filtro: converte a imaxe en escala de grises
1const gd.GRAYSCALE = 6;
SMOOTH
Tipo de filtro: fai a imaxe máis suave, usa arg1 para establecer o nivel de suavidade
1const gd.SMOOTH = 7;
BRIGHTNESS
Tipo de filtro: cambia o brillo da imaxe, usa arg1 para definir o nivel de brillo, o intervalo de valores é de -255 ~ 255
1const gd.BRIGHTNESS = 8;
CONTRAST
Tipo de filtro: cambia o contraste da imaxe, usa arg1 para definir o nivel de contraste, o intervalo de valores é de 0 a 100
1const gd.CONTRAST = 9;
COLORIZE
Tipo de filtro: cambia o ton da imaxe. Usa arg1, arg2 e arg3 para especificar vermello, azul e verde respectivamente. O intervalo de cada cor é de 0 a 255. arg4 é transparencia e o valor devolto é de 0 a 127.
1const gd.COLORIZE = 10;