Hướng dẫn what is php gd extension - phần mở rộng php gd là gì

Xử lý hình ảnh và GD

  • Giới thiệu
  • Installing/Configuring
    • Yêu cầu
    • Cài đặt
    • Cấu hình thời gian chạy
    • Loại tài nguyên
  • Hằng số được xác định trước
  • Ví dụ
    • Sáng tạo PNG với PHP
    • Thêm hình mờ vào hình ảnh bằng các kênh alpha
    • Sử dụng ImageCopymerge để tạo ra một hình mờ mờ
  • Chức năng GD và hình ảnh
    • GD_INFO - Truy xuất thông tin về thư viện GD hiện đã được cài đặt
    • GetImagesize - Nhận kích thước của một hình ảnh
    • GetImagesizeFromString - Nhận kích thước của một hình ảnh từ một chuỗi
    • Image_Type_To_Extension - Nhận tiện ích mở rộng tệp cho loại hình ảnh
    • Image_Type_TO_MIME_TYPE-Nhận loại mime cho loại hình ảnh được trả về bởi getImage
    • Image2WBMP - Hình ảnh đầu ra cho trình duyệt hoặc tệp
    • ImageAffine - Trả về hình ảnh chứa hình ảnh SRC biến đổi affine, sử dụng khu vực cắt tùy chọn
    • Imageaffinematrixconcat - Concatenate hai ma trận biến đổi affine
    • Imageaffinematrixget - Nhận ma trận chuyển đổi affine
    • Imagealphablending - Đặt chế độ pha trộn cho hình ảnh
    • Imageantialias - có nên sử dụng các chức năng antialias hay không
    • IMAGEARC - vẽ một vòng cung
    • ImageAvif - Hình ảnh đầu ra cho trình duyệt hoặc tệp
    • ImageBMP - xuất hình ảnh BMP vào trình duyệt hoặc tệp
    • ImageChar - Vẽ một nhân vật theo chiều ngang
    • ImageCharup - Vẽ một nhân vật theo chiều dọc
    • ImageColorallocate - Phân bổ một màu cho hình ảnh
    • IMAGECOLORALLOCATEALPHA - Phân bổ một màu cho hình ảnh
    • ImageColorat - Nhận chỉ số màu của một pixel
    • ImageColorClosest - Nhận chỉ số màu gần nhất với màu được chỉ định
    • ImageColorClosestalpha - Nhận chỉ số của màu gần nhất với màu được chỉ định + alpha
    • IMAGECOLORCLOSESHWB - Nhận chỉ số của màu có màu sắc, trắng và đen
    • ImageColordeallococate-Phân bổ một màu cho hình ảnh
    • IMAGECOLOREXACT - Nhận chỉ số của màu được chỉ định
    • IMAGECOLOREXACTALPHA - Nhận chỉ số của màu được chỉ định + alpha
    • ImageColorMatch - Làm cho màu của phiên bản bảng màu của hình ảnh phù hợp hơn với phiên bản màu thật
    • ImageColorResolve - Nhận chỉ số của màu được chỉ định hoặc sự thay thế gần nhất có thể của nó
    • ImageColorresolvealpha - Nhận chỉ số của màu được chỉ định + alpha hoặc thay thế gần nhất có thể
    • ImageColorSet - Đặt màu cho chỉ mục bảng màu được chỉ định
    • ImageColorsForIndex - Nhận màu sắc cho một chỉ mục
    • ImageColorStotal - Tìm ra số lượng màu trong bảng màu của hình ảnh
    • ImageColortRansarparent - Xác định màu là trong suốt
    • ImageConVolution - Áp dụng ma trận tích chập 3x3, sử dụng hệ số và bù
    • ImageCopy - Sao chép một phần của hình ảnh
    • ImageCopymerge - Sao chép và hợp nhất một phần của hình ảnh
    • ImageCopymerGegray - Sao chép và hợp nhất một phần của hình ảnh với tỷ lệ màu xám
    • ImageCopyResampled - Sao chép và thay đổi kích thước một phần của hình ảnh với việc lấy mẫu lại
    • ImageCopyResized - Sao chép và thay đổi kích thước một phần của hình ảnh
    • ImageCreate - Tạo một hình ảnh dựa trên bảng màu mới
    • ImageCreateFromAvif - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFrombMP - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromGD2 - Tạo một hình ảnh mới từ tệp GD2 hoặc URL
    • ImageCreateFromGD2Part - Tạo một hình ảnh mới từ một phần nhất định của tệp GD2 hoặc URL
    • ImageCreateFromGD - Tạo một hình ảnh mới từ tệp GD hoặc URL
    • ImageCreateFromGif - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromJPeg - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFrompng - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromString - Tạo một hình ảnh mới từ luồng hình ảnh trong chuỗi
    • ImageCreateFromTga - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromWBMP - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromWebp - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromXBM - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreateFromXPM - Tạo một hình ảnh mới từ tệp hoặc URL
    • ImageCreatetRueColor - Tạo một hình ảnh màu thật mới
    • ImageCrop - Cắt hình ảnh đến hình chữ nhật đã cho
    • IMAGECROPAUTO - Cắt hình ảnh tự động bằng một trong các chế độ có sẵn
    • ImageDashedline - Vẽ một đường nét đứt
    • ImageDestroy - Phá hủy một hình ảnh
    • Imageellipse - Vẽ một hình elip
    • ImageFill - Lũ lụt
    • ImageFillsarc - Vẽ một vòng cung và lấp đầy nó
    • ImageFillsellipse - Vẽ một hình elip đầy
    • ImageFillsPolygon - Vẽ một đa giác đầy
    • ImageFillsRectRectangle - Vẽ một hình chữ nhật đầy
    • ImageFillToborder - Lũ lụt vào màu cụ thể
    • ImageFilter - Áp dụng bộ lọc cho hình ảnh
    • ImageFlip - lật hình ảnh bằng chế độ đã cho
    • ImageFontheight - Nhận chiều cao phông chữ
    • ImageFontWidth - Nhận chiều rộng phông chữ
    • ImageftBbox - Cung cấp cho hộp giới hạn của văn bản bằng phông chữ qua freetype2
    • ImageftText - Viết văn bản vào hình ảnh bằng phông chữ bằng Freetype 2
    • ImageGammacorrect - Áp dụng hiệu chỉnh gamma cho hình ảnh GD
    • ImageGD2 - Hình ảnh GD2 đầu ra cho trình duyệt hoặc tệp
    • ImageGD - Hình ảnh GD đầu ra cho trình duyệt hoặc tệp
    • ImageGetClip - Nhận hình chữ nhật cắt
    • ImageGetInterpolation - Nhận phương pháp nội suy
    • ImageGif - Hình ảnh đầu ra cho trình duyệt hoặc tệp
    • ImageGrabScreen - chụp toàn bộ màn hình
    • ImageGrabWindow - chụp cửa sổ
    • ImageInterlace - bật hoặc tắt xen kẽ
    • ImageistRueColor - Tìm xem hình ảnh có phải là hình ảnh TrueColor
    • ImageJPEG - Hình ảnh đầu ra cho trình duyệt hoặc tệp
    • ImageLayereffect - Đặt cờ pha trộn alpha thành các hiệu ứng phân lớp
    • Imageline - Vẽ một dòng
    • ImageLoadFont - Tải một phông chữ mới
    • ImageOpenPolygon - Vẽ một đa giác mở
    • ImagePaletteCopy - Sao chép bảng màu từ hình ảnh này sang hình ảnh khác
    • ImagePalettetOtrueColor - Chuyển đổi hình ảnh dựa trên bảng màu thành màu thật
    • ImagePng - xuất hình ảnh PNG cho trình duyệt hoặc tệp
    • ImagePolygon - Vẽ một đa giác
    • Imagerectangle - Vẽ một hình chữ nhật
    • Imageresolution - Nhận hoặc đặt độ phân giải của hình ảnh
    • Hình ảnh - Xoay một hình ảnh với một góc đã cho
    • ImageSavealpha - có giữ lại thông tin kênh alpha đầy đủ khi lưu hình ảnh PNG
    • ImagesCale - Tỷ lệ một hình ảnh bằng cách sử dụng chiều rộng và chiều cao mới đã cho
    • ImageSetBrush - Đặt hình ảnh bàn chải cho bản vẽ dòng
    • ImageSetClip - Đặt hình chữ nhật cắt
    • ImageSetInterpolation - Đặt phương pháp nội suy
    • ImageSetPixel - Đặt một pixel duy nhất
    • ImageSetStyle - Đặt phong cách cho bản vẽ dòng
    • ImageSetthickness - Đặt độ dày cho bản vẽ dòng
    • ImageSettile - Đặt hình ảnh gạch để lấp đầy
    • ImageString - Vẽ một chuỗi theo chiều ngang
    • ImageStringUp - Vẽ một chuỗi theo chiều dọc
    • ImageSX - Nhận chiều rộng hình ảnh
    • Hình ảnh - Nhận chiều cao hình ảnh
    • IMAGETRUECOLORTOPALETTE - Chuyển đổi hình ảnh màu thật thành hình ảnh bảng màu
    • IMAGETTFBBOX - Cung cấp cho hộp giới hạn của văn bản bằng phông chữ TrueType
    • IMAGETTFTEXT - Viết văn bản vào hình ảnh bằng Phông chữ TrueType
    • ImageTypes - Trả về các loại hình ảnh được hỗ trợ bởi bản dựng PHP này
    • ImageWBMP - Hình ảnh đầu ra cho trình duyệt hoặc tệp
    • ImageWebp - xuất hình ảnh trang web vào trình duyệt hoặc tệp
    • ImageXBM - xuất hình ảnh XBM vào trình duyệt hoặc tệp
    • iptcembed - nhúng dữ liệu IPTC nhị phân vào hình ảnh JPEG
    • IPTCPARSE - Phân tích khối IPTC nhị phân vào các thẻ đơn
    • JPEG2WBMP - Chuyển đổi tệp hình ảnh JPEG thành tệp hình ảnh WBMP
    • PNG2WBMP - Chuyển đổi tệp hình ảnh PNG thành tệp hình ảnh WBMP
  • GDIMAGE - Lớp GDimage
  • Gdfont - lớp gdfont

Thư tại Ecross Dot NL ¶

12 năm trước

hello there,
i made a function to create a gradient image.

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');

if(

$vertical){$image = imagerotate($image, 90, 0);}
ImagePNG($image);
imagedestroy($image);
}
?>

kurdtpage tại gmail dot com ¶

11 năm trước

When using GD, please make sure of the following things:

1. The file that is used to manipulate images is saved as ANSI format and not UTF-8
2. There is no space in front of the opening tag

Herbert Dot Walde tại Googlemail Dot Com ¶

10 năm trước

In case your script is using output-buffering-functions somewhere, then you have to clear the buffer first ( with ob_clear() ), before outputting an image with a function like imagepng().

And you should make sure that no buffer will get send after outputing an image by using the ob_end_flush()-function.

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
0

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
1

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
2

Thomas ¶

13 năm trước

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
4

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
5

Mã tại Ashleyhunt dot co dot uk ¶

14 năm trước

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
7

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
8

description:
gradient(int image_width, int image_height,
int start_red, int start_green, int start_blue,
int end_red, int end_green, int end_blue,
bool vertical)
9

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
0

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
1

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
2

MHKH2366 tại Gmail Dot Com ¶

3 năm trước

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
4

donatj tại gmail dot com ¶

11 năm trước

function:
function gradient($image_width, $image_height,$c1_r, $c1_g, $c1_b, $c2_r, $c2_g, $c2_b, $vertical=false)
{
// first: lets type cast;
$image_width = (integer)$image_width;
$image_height = (integer)$image_height;
$c1_r = (integer)$c1_r;
$c1_g = (integer)$c1_g;
$c1_b = (integer)$c1_b;
$c2_r = (integer)$c2_r;
$c2_g = (integer)$c2_g;
$c2_b = (integer)$c2_b;
$vertical = (bool)$vertical;// create a image
$image  = imagecreatetruecolor($image_width, $image_height); // make the gradient
for($i=0; $i<$image_height; $i++)
{
$color_r = floor($i * ($c2_r-$c1_r) / $image_height)+$c1_r;
$color_g = floor($i * ($c2_g-$c1_g) / $image_height)+$c1_g;
$color_b = floor($i * ($c2_b-$c1_b) / $image_height)+$c1_b;$color = ImageColorAllocate($image, $color_r, $color_g, $color_b);
imageline($image, 0, $i, $image_width, $i, $color);
}
# Prints out all the figures and picture and frees memory
header('Content-type: image/png');
5

Làm thế nào tôi có thể biết nếu GD được bật trong PHP?

Để biết điều này, chúng tôi có thể sử dụng chức năng PHPINFO và kiểm tra hỗ trợ GD hay không.Dưới đây là hình ảnh của hàm Phpinfo hiển thị trong hệ thống kích hoạt GD.Hình ảnh trên được hiển thị bởi hàm PHPINFO cho thấy hỗ trợ GD được bật trong hệ thống PHP và sẵn sàng sử dụng.use phpinfo function and check GD support is available or not. Here is an image of what phpinfo function displays in a GD enabled system. The above image displayed by phpinfo function shows that GD support is enabled in the php system and ready to use.

Việc sử dụng GD trong đồ họa máy tính là gì?

GD ban đầu là đại diện cho "GIF Draw".Tuy nhiên, kể từ khi thu hồi giấy phép Unisys, nó đã không chính thức là "vẽ đồ họa".GD có thể tạo hình ảnh bao gồm các dòng, cung, văn bản (sử dụng phông chữ được chọn chương trình), các hình ảnh khác và nhiều màu.create images composed of lines, arcs, text (using program-selected fonts), other images, and multiple colors.