引言

准备工作

在开始之前,请确保以下准备工作已完成:

  1. 安装PHP环境。
  2. 安装GD库,GD库是PHP处理图片的必要扩展。
  3. 准备一张或多张待处理的图片文件。

第一步:加载图片

<?php
// 加载图片
$image = imagecreatefromjpeg('example.jpg');

// 检查是否成功加载图片
if (!$image) {
    die('图片加载失败!');
}
?>

第二步:设置图片属性

<?php
// 设置背景颜色
$backgroundColor = imagecolorallocate($image, 255, 255, 255); // 白色

// 填充背景颜色
imagefill($image, 0, 0, $backgroundColor);
?>

第三步:添加文本

<?php
// 设置字体样式
$fontFile = 'arial.ttf'; // 字体文件路径

// 设置文本内容、字体大小、颜色和位置
$text = 'Hello, World!';
$fontSize = 20;
$textColor = imagecolorallocate($image, 0, 0, 0); // 黑色
$textBox = imagettfbbox($fontSize, 0, $fontFile, $text);

// 计算文本位置
$textX = (imagesx($image) - $textBox[2]) / 2;
$textY = (imagesy($image) - $textBox[7]) / 2;

// 添加文本
imagettftext($image, $fontSize, 0, $textX, $textY, $textColor, $fontFile, $text);
?>

第四步:添加图片水印

<?php
// 加载水印图片
$watermark = imagecreatefrompng('watermark.png');

// 获取水印图片尺寸
$watermarkWidth = imagesx($watermark);
$watermarkHeight = imagesy($watermark);

// 计算水印位置
$watermarkX = (imagesx($image) - $watermarkWidth) / 2;
$watermarkY = (imagesy($image) - $watermarkHeight) / 2;

// 添加水印
imagecopy($image, $watermark, $watermarkX, $watermarkY, 0, 0, $watermarkWidth, $watermarkHeight);
?>

第五步:保存图片

<?php
// 设置图片保存格式和路径
$imagePath = 'output.jpg';
$imageFormat = 'jpeg';

// 保存图片
imagejpeg($image, $imagePath);

// 释放内存
imagedestroy($image);
?>

总结