Module 基礎模塊

模塊gd

圖像文件處理模塊

基礎模塊。可用於創建和操作圖像文件,引用方式:

1
var gd = require('gd');

靜態函數

create

創建一個新圖像

1 2 3
static Image gd.create(Integer width, Integer height, Integer color = gd.TRUECOLOR) async;

調用參數:

  • width: Integer, 指定圖像寬度
  • height: Integer, 指定圖像高度
  • color: Integer, 指定圖像類型,允許值為 gd.TRUECOLORgd.PALETTE

返回結果:

  • Image, 返回創建成功的圖像對象

load

從格式數據中解碼圖像

1
static Image gd.load(Buffer data) async;

調用參數:

  • data: Buffer, 給定解碼的圖像數據

返回結果:

  • Image, 返回解碼成功的圖像對象

從流對像中解碼圖像

1
static Image gd.load(SeekableStream stm) async;

調用參數:

返回結果:

  • Image, 返回解碼成功的圖像對象

從指定文件中解碼圖像

1
static Image gd.load(String fname) async;

調用參數:

  • fname: String, 指定文件名

返回結果:

  • Image, 返回解碼成功的圖像對象

rgb

通過rgb 顏色分量生成組合顏色

1 2 3
static Integer gd.rgb(Integer red, Integer green, Integer blue);

調用參數:

  • red: Integer, 紅色分量,範圍為0-255
  • green: Integer, 綠色分量,範圍為0-255
  • blue: Integer, 藍色分量,範圍為0-255

返回結果:

  • Integer, 返回組合顏色

rgba

通過rgba 顏色分量生成組合顏色

1 2 3 4
static Integer gd.rgba(Integer red, Integer green, Integer blue, Number alpha);

調用參數:

  • red: Integer, 紅色分量,範圍為0-255
  • green: Integer, 綠色分量,範圍為0-255
  • blue: Integer, 藍色分量,範圍為0-255
  • alpha: Number, 透明分量,範圍為0.0-1.0

返回結果:

  • Integer, 返回組合顏色

hsl

通過hsl 顏色分量生成組合顏色

1 2 3
static Integer gd.hsl(Number hue, Number saturation, Number lightness);

調用參數:

  • hue: Number, 色相分量,範圍為0-360
  • saturation: Number, 飽和度分量,範圍為0.0-1.0
  • lightness: Number, 亮度分量,範圍為0.0-1.0

返回結果:

  • Integer, 返回組合顏色

hsla

通過hsla 顏色分量生成組合顏色

1 2 3 4
static Integer gd.hsla(Number hue, Number saturation, Number lightness, Number alpha);

調用參數:

  • hue: Number, 色相分量,範圍為0-360
  • saturation: Number, 飽和度分量,範圍為0.0-1.0
  • lightness: Number, 亮度分量,範圍為0.0-1.0
  • alpha: Number, 透明分量,範圍為0.0-1.0

返回結果:

  • Integer, 返回組合顏色

hsb

通過hsb 顏色分量生成組合顏色

1 2 3
static Integer gd.hsb(Number hue, Number saturation, Number brightness);

調用參數:

  • hue: Number, 色相分量,範圍為0-360
  • saturation: Number, 飽和度分量,範圍為0.0-1.0
  • brightness: Number, 明亮程度分量,範圍為0.0-1.0

返回結果:

  • Integer, 返回組合顏色

hsba

通過hsba 顏色分量生成組合顏色

1 2 3 4
static Integer gd.hsba(Number hue, Number saturation, Number brightness, Number alpha);

調用參數:

  • hue: Number, 色相分量,範圍為0-360
  • saturation: Number, 飽和度分量,範圍為0.0-1.0
  • brightness: Number, 明亮程度分量,範圍為0.0-1.0
  • alpha: Number, 透明分量,範圍為0.0-1.0

返回結果:

  • Integer, 返回組合顏色

color

通過字符串生成組合顏色

1
static Integer gd.color(String color);

調用參數:

  • color: String, 指定顏色的字符串,如:"#ff0000", "ff0000", "#f00", "f00"

返回結果:

  • Integer, 返回組合顏色

常量

NONE

圖像格式常量,標示當前圖像來源為未知

1
const gd.NONE = 0;

JPEG

圖像格式常量,標示當前圖像來源為jpeg 格式數據

1
const gd.JPEG = 1;

GIF

圖像格式常量,標示當前圖像來源為gif 格式數據

1
const gd.GIF = 2;

PNG

圖像格式常量,標示當前圖像來源為png 格式數據

1
const gd.PNG = 3;

TIFF

圖像格式常量,標示當前圖像來源為tiff 格式數據

1
const gd.TIFF = 4;

BMP

圖像格式常量,標示當前圖像來源為bmp 格式數據

1
const gd.BMP = 5;

WEBP

圖像格式常量,標示當前圖像來源為webp 格式數據

1
const gd.WEBP = 6;

TRUECOLOR

圖像類型常量,標示當前圖像為真彩色圖像

1
const gd.TRUECOLOR = 0;

PALETTE

圖像類型常量,標示當前圖像為調色板圖像

1
const gd.PALETTE = 1;

ARC

扇形繪製樣式,繪製一條連接開始和結束點的圓弧

1
const gd.ARC = 0;

CHORD

扇形繪製樣式,繪製一條連接原點,開始和結束點的直線

1
const gd.CHORD = 1;

NOFILL

扇形繪製樣式,繪製不填充的扇形

1
const gd.NOFILL = 2;

EDGED

扇形繪製樣式,繪製一條連接起點和終點的弧和連接原點的直線

1
const gd.EDGED = 4;

HORIZONTAL

鏡像方向,橫向做鏡像處理

1
const gd.HORIZONTAL = 1;

VERTICAL

鏡像方向,縱向做鏡像處理

1
const gd.VERTICAL = 2;

BOTH

鏡像方向,橫向和縱向都做鏡像處理

1
const gd.BOTH = 3;

LEFT

旋轉方向,向左旋轉

1
const gd.LEFT = 1;

旋轉方向,向右旋轉

1
const gd.RIGHT = 2;

MEAN_REMOVAL

濾波器類型:用平均移除法來達到輪廓效果

1
const gd.MEAN_REMOVAL = 0;

EDGEDETECT

濾波器類型:用邊緣檢測來突出圖像的邊緣

1
const gd.EDGEDETECT = 1;

EMBOSS

濾波器類型:使圖像浮雕化

1
const gd.EMBOSS = 2;

SELECTIVE_BLUR

濾波器類型:模糊圖像

1
const gd.SELECTIVE_BLUR = 3;

GAUSSIAN_BLUR

濾波器類型:用高斯算法模糊圖像

1
const gd.GAUSSIAN_BLUR = 4;

NEGATE

濾波器類型:將圖像中所有顏色反轉

1
const gd.NEGATE = 5;

GRAYSCALE

濾波器類型:將圖像轉換為灰度圖

1
const gd.GRAYSCALE = 6;

SMOOTH

濾波器類型:使圖像更柔滑,用arg1設定柔滑級別

1
const gd.SMOOTH = 7;

BRIGHTNESS

濾波器類型:改變圖像的亮度,用arg1設定亮度級別,取值範圍是-255~255

1
const gd.BRIGHTNESS = 8;

CONTRAST

濾波器類型:改變圖像的對比度,用arg1設定對比度級別,取值範圍是0~100

1
const gd.CONTRAST = 9;

COLORIZE

濾波器類型:改變圖像的色調,用arg1、arg2、arg3分別指定red、blue、green,每種顏色範圍是0~255,arg4為透明度,取值返回是0~127

1
const gd.COLORIZE = 10;