首页 > 后端开发 > php教程 > 调整大小和操纵PHP的图像(示例)

调整大小和操纵PHP的图像(示例)

William Shakespeare
发布: 2025-03-03 09:52:11
原创
408 人浏览过

本教程扩展了基本的PHP GD图像操纵,建立在图像加载,裁剪,旋转,缩放和翻转的先前覆盖范围内。 我们将探索高级技术,例如捕获图像输出流和嵌入水印。 以前,我们检查了图像输出的

>。 我们可以使用imagejpeg()之类的函数捕获此输出。 例如,没有文件名参数输出原始流; imagegif()捕获此流。 然后可以将此原始数据编码为基础64。 相反,可以将基本64编码的图像字符串解码并通过imagecreatefromjpeg()来创建图像。 这是保存base64编码图像的方法:imagejpeg()> ob_get_contents() imagecreatefromstring()这将解码base64字符串,创建图像资源并将其保存为JPEG。

<?php
$image_data = base64_decode($image_data_base64);
$img = imagecreatefromstring($image_data);

imagejpeg($img, 'profile.jpg');
imagedestroy($img);
?>
登录后复制
添加水印

GD可以很容易地实现水印。 这增强了图像所有权和品牌认可。

此代码加载主图像和水印,将水印缩放到主图像的宽度五分之一,并使用

定位。 动态水印调整大小可确保不论主图像的尺寸如何

<?php
$im_php = imagecreatefromjpeg('waterfall.jpg');
$watermark = imagecreatefrompng('watermark.png');
$im_width = imagesx($im_php);
$im_height = imagesy($im_php);

$watermark = imagescale($watermark, $im_width/5);
$wt_width = imagesx($watermark);
$wt_height = imagesy($watermark);

imagecopy($im_php, $watermark, 0.95*$im_width - $wt_width, 0.95*$im_height - $wt_height, 0, 0, $wt_width, $wt_height);

$new_name = 'waterfall-watermark.jpg';
imagejpeg($im_php, $new_name);
?>
登录后复制

超出水印,元数据(例如位置或时间戳)可以类似地合并。 imagecopy()

结论

Resize and Manipulate Images in PHP (With Examples)

本教程扩展了先前的GD函数,展示了高级技术。 我们涵盖了溪流操作和水印,为PHP中的图像处理提供了实用的应用。尝试这些功能以创造各种图像效应。

以上是调整大小和操纵PHP的图像(示例)的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板