GD 拓展库笔记

GD 拓展库笔记

getimagesize(url); // 获取图片的尺寸
imagecolorallocate(图片流, R, G, B); // 为指定图片流设置颜色
imagecopy(背景图片, 源图片, 背景图片开始X, 背景图片开始Y, 源图片X, 源图片Y, 截取图片X, 截取图片Y); // 图片合并
imagejpeg(图片流); 将背景图片输出到屏幕
imagettftext($img_bg, 14, 0, 190, 930, $color, TTF, "《一瞬间的灿烂》"); // 想图片中加入文字
图片操作
// PHP 使用 GD 拓展库制作图像
// 指定输出为 JPEG 图片
define('TTF', '/phpStudy/PHPTutorial/WWW/FZZJ-HFXCJW.TTF');
//header('Content-type:image/jpeg');
$img_bg = imagecreatefromjpeg('bg1.jpg');
$img_mini_wine = imagecreatefrompng('mini_wine.png');
// 将小酒图片组装到背景图片上
imagecopy($img_bg, $img_mini_wine, 0, 0, 0, 0, 750, 1334);
// 图片大小355 * 290 开始X=195 Y=608

/*
 * 将用户上传的图片进行处理,转化成适合大小的图片
 */
$img_user_bg = imagecreatefromjpeg('user_bg.jpg');
$img_user_size = getimagesize('user_bg.jpg');
$img_user_res = imagecreatetruecolor(355, 290);
imagecopyresampled($img_user_res, $img_user_bg, 0, 0, 0, 0, 355, 290, $img_user_size[0], $img_user_size[1]);
// 将用户的图片组装到背景图片上
imagecopy($img_bg, $img_user_res, 195, 608, 0, 0, 355, 290);
// 颜色
$color = imagecolorallocate($img_bg, 1, 2, 3);
// 标题 开始X=190 Y=930
imagettftext($img_bg, 14, 0, 190, 930, $color, TTF, "《一瞬间的灿烂》");
// 落款 开始Y=1030
$inscribe_box = imagettfbbox(14, 0, TTF, "———— 夏天");
$inscribe_x = 585 - ($inscribe_box[2] - $inscribe_box[0]);
imagettftext($img_bg, 14, 0, $inscribe_x, 1030, $color, TTF, "—— 夏天");
// 描述 开始Y=930
$desc = <<

你可能感兴趣的:(GD 拓展库笔记)