用GD创建一张包含其他图像的图片

2023-11-24

我想用PHP用GD创建一张由不同的其他图片组成的图片。例如,我有 6 张(或更多)图片,我想创建一张包含这些不同图片的图片。

困难在于我的最终图片必须具有固定的宽度和高度(304x179),因此如果不同的图片太大,则必须将其剪切。这是来自 IconFinder 的示例:

This picture have 6 images

此图由 6 个图像组成,但第 3 只鸟(绿色)被剪掉,第 4、5、6 只被剪掉在底部。这就是我想要的,你能帮我用 PHP 编写这段代码吗?

Thanks


创建您的主要图像并将其视为您的“画布”。

从那里开始,使用图像复制()将较小的图像复制到画布图像中。

例如看这个:

<?php
header('Content-Type: image/jpg');
$canvas = imagecreatetruecolor(304, 179);
$icon1 = imagecreatefromjpeg('icon.jpg');
$icon2 = imagecreatefromjpeg('icon2.jpg');
// ... add more source images as needed
imagecopy($canvas, $icon1, 275, 102, 0, 0, 100, 100);
imagecopy($canvas, $icon2, 0, 120, 0, 0, 100, 100);
// ... copy additional source images to the canvas as needed
imagejpeg($canvas);
?>

在我的例子中,icon.jpg是一个 100x100 的图像,我将其放置在画布中,使其左上角位于画布中的 275, 102 处,从而切掉了右侧。

Edit

我调整了代码以使其更类似于您正在做的事情。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

用GD创建一张包含其他图像的图片 的相关文章

  • 在php中获取二进制数据大小的正确方法是什么?

    我已阅读文件的一部分 现在想确保该部分的大小正确 我怎样才能在 php 中做到这一点 part fread file 1024 return some function part 1024 我已经阅读了这些示例 但我怀疑是否要使用 strl
  • 未捕获的 ValueError:mysqli_stmt::execute():参数 #1 ($params) 必须是列表数组

    我试图通过这两个查询在我的数据库中插入准备好的语句多个值 这两个查询都发生故障 返回 未捕获的错误 调用未定义的方法 mysqli stmt bindValue 对于第一个代码或 未捕获的 ValueError mysqli stmt ex
  • 如何在 标签中用 %20 替换空格

    我想替换 html 文本的图像标签中的所有空格 Example img src to img src photo 201 jpg 我没有找到 preg replace 的解决方案 但它可能是一个简单的正则表达式行 谢谢 Edit 抱歉各位
  • Instagram 如何使用 Amazon S3?

    在将文件上传到 Amazon S3 时 我需要深入了解 Instagram 的工程 我刚刚开始使用 S3 我认为 Instagram 是一个值得效仿的好模式 因为他们每天上传数千张图片 我的应用程序有点相似 用户上传图片 可以删除自己的图片
  • 基于 PHP 的 CSV 编辑器? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有谁知道用 PHP 编写的在线 CSV 编辑器允许用户打开 编辑和保存给定的 CSV 文件 我能找到的只
  • PHP 警告 ZipArchive::extractTo():权限被拒绝

    我创建了一个应用程序 它使用 ZipArchive 类 php 中的标准 中的方法 extractTo 并在 Windows 7 上的本地主机 apache 服务器上对其进行了测试 没有任何问题 但是当我在一些unix生产服务器上尝试过它之
  • 一次将多个值插入MySQL [重复]

    这个问题在这里已经有答案了 谁能解释一下为什么这个 PHP MySQL 不起作用 基本上我需要从表单中一次插入大量行 因此会有多个名称字段 多个短 中 长字段等 我收到此错误 Notice Undefined variable Short1
  • 使用 PDO 在 SQLite 中检索单个(且唯一)行的最简单方法

    我有这个 PDO stmt db gt prepare SELECT FROM channels WHERE id id stmt gt bindValue id id SQLITE3 INTEGER result stmt gt exec
  • 登录后所有页面都应该是https吗?

    这有点难以解释 但我会尽力 有一个网站 每个页面上都有登录表单 其中包含用户名 密码字段 这些页面未使用 SSL 用户填写用户名 密码并提交表单后 表单将被发送到 https 的身份验证页面 对于这种情况我有几个疑问 向 https 页面提
  • 如何在 joomla 模块中通过 javascript 发送输入文件类型

    我想将带有 javascript 的文件发送到 php 文件 我的 php 文件中有这个表单
  • 疯狂的 crond 行为。不断使 bash 进程失效

    我有一个看起来像这样的 crontab SHELL bin bash PATH sbin bin usr sbin usr bin MAILTO root HOME 0 59 var www html private fivemin zda
  • 避免 SQLite3 中的 SQL 注入

    我正在尝试找出一种避免 SQL 注入的好简单方法 到目前为止我只能提出两个想法 对用户输入进行 Base64 编码 其实不想这样做 使用正则表达式删除不需要的字符 目前正在使用这个 不确定是否100 安全 这是我当前的代码
  • 无需下载整个文件即可读取 ID3 标签

    是否可以读取 MP3 文件的 ID3 标签 持续时间 艺术家 标题 而无需下载整个文件 我做了一些测试 只需下载 MP3 文件的几个字节就可以获得艺术家和标题标签 但我不确定持续时间和其他标签是否可能 Thanks 我刚刚发现 ffmpeg
  • 如何使用 PDO 动态构建查询

    我正在使用 PDO 并想做这样的事情 query dbh gt prepare SELECT FROM table WHERE column value query gt bindParam table tableName query gt
  • 从外部 bash 设置环境变量

    我试图使用 PHP 从命令行 设置 bash 环境变量 但没有成功 buff array buff VARTESTKEY VARTESTVALUE buff export VARTESTKEY file put contents scrip
  • 转换MAC地址格式

    我刚刚编写了一个小脚本 从交换机中提取数百个 MAC 地址进行比较 但它们的格式为 0025 9073 3014 而不是标准的 00 25 90 73 30 14 我对如何转换它感到困惑 我能想到的最好的办法就是在 处将它们分解成碎片 然后
  • $_SESSION 中保存大量信息可以吗?

    我需要存储许多数组 SESSION以防止从 MySQL 检索信息 可以吗 其中 太多 的信息有多少 SESSION还是没有 太多 谢谢 附 或者更好地使用http php net manual en book memcache php ht
  • PHP 中的嵌套 JSON 输出

    我正在为 iOS 应用程序构建 API 并尝试将 mySQL 数据转换为 JSON 字符串进行处理 所需的输出将需要顶级订单详细信息 例如客户名称和地址 然后是订购的产品子数组 我需要的两个表中有相当多的字段 我希望拥有所有字段 我已经构建
  • 如何显示不同页眉的页面? [关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 我正在为我的学校项目开发网站 但我遇到了一个问题 我在每个页面上显示一个标题 我的标题之一包含登录表单 另一标题包含用户名 搜索栏等 问题是
  • PHP 中的 Zip 流

    我有一个 PHP 脚本 可以动态创建 zip 文件并强制浏览器下载该 zip 文件 问题是 我可以直接将zip文件写入连接到用户浏览器的输出流 而不是先将其保存为服务器上的真实文件 然后发送文件吗 提前致谢 如果您的 Web 服务器运行的是

随机推荐

  • CMake - 依赖于另一个 cmake 项目

    我正在从事的项目具有以下结构 Library1 build include src CMakeLists txt Library2 build include src CMakeLists txt Executable1 build inc
  • 使用@@identity而不是scope_identity的原因

    在 SQL Server 2005 数据库上 我们的一位远程开发人员刚刚签入了对存储过程的更改 该更改将 select scope identity 更改为 select identity 您知道为什么要使用 identity 而不是sco
  • CUDA:CPU 定时器和 CUDA 定时器事件之间的区别?

    使用 a 有什么区别CPU定时器和CUDA定时器事件测量执行某些 CUDA 代码所需的时间 CUDA 程序员应该使用其中哪一个 为什么 我知道的 CPU定时器使用将涉及调用cudaThreadSynchronize在任何时间被记录之前 为了
  • Ipython 可以在命令提示符下运行,但不能在浏览器中运行

    我使用的是 Windows 8 64 位笔记本电脑 我的电脑上已经安装了 python 2 7 所以我使用 easy install 安装了 Ipython 我现在可以在 C Python27 Scripts 中看到 ipython 应用程
  • 在 For Of 循环中使用对象

    为什么不能在 for of 循环中使用对象 或者这是一个浏览器错误 这段代码在 Chrome 42 中不起作用 表示 undefined 不是一个函数 test first one for var item of test console
  • numpy的fft结果的幅度要乘以采样周期?

    我尝试用一 个例子来验证我对 Numpy 的 FFT 的理解 exp pi t 2 应该exp pi f 2 当没有对直接变换应用缩放时 但是 我发现要获得这个结果 我需要将 FFT 的结果乘以一个因子dt 这是我的函数上两个样本点之间的时
  • 使用 date_format 选择日期范围 MySQL

    我在使用 MySQL 选择日期范围时遇到问题 SELECT MvtDate date format MvtDate d m Y FROM immmvt WHERE date format MvtDate d m Y BETWEEN 01 0
  • 自定义to_yaml和domain_type

    我需要定义用于序列化 反序列化对象的自定义方法 我想做如下的事情 class Person def to yaml type example com 2010 11 30 Person end def to yaml string repr
  • 管理 IO 单子

    我正在学习一些 Haskell 请原谅新手错误 这个例程出错了 我对 do exister String gt Bool exister path do fileexist lt doesFileExist path direxist lt
  • 基于生成器的协程与原生协程

    我刚刚读过PEP0492谈论协程的新方法 但 PEP 未能让我理解基于生成器的协程和本机协程之间的区别 有人可以告诉我其中的区别 也许可以举例 吗 据我了解 他们使用不同的词 yield yield from 和 wait async yi
  • GBZ80:LD HL,(SP+e) 如何影响 H 和 C 标志?

    在 Gameboy Z80 上 究竟如何LD HL SP e 操作影响 H 和 C 标志吗 半进位 进位 参考 http www devrs com gb files opcodes html 我意识到这是一个老问题 但我不久前遇到了类似的
  • 依赖属性错误

    我正在学习依赖属性 我读了很多帖子和书籍 但仍然不清楚 下面的程序是我为了学习而写的 其中有些错误 请帮忙解决 我有疑问 自定义依赖属性元素的主要用途是用于更改通知 我找到了一个 IsDefaultProperty 代码Button在 WP
  • 设置asterisk agi功能处理的等待音

    我使用星号和正常的 PHP AGI 以下this链接问题是我的 PHP AGI 需要 5 秒才能执行 我只是想设置一些等待音 让用户等待 AGI 处 理完毕 在同一个链接上我发现了一些东西 设置音乐 启用 禁用保持音乐发生器 例如 默认设置
  • 无限滚动 Div 与 Ajax 加载内容?

    我想实现一种称为可滚动 div 的技术GWT 我正在尝试做的事情如下 如果用户在我的页面上 他只能看到视口 图像中的绿色框 该视口中的所有 DOM 元素在页面加载时对用户可见 在页面加载时加载页面后 所有不在视口上的 DOM 元素尚未加载
  • VS2010 - WinForms - DataGridView - 绑定到数据集

    我是 winforms 的新手 我在表控件中有一个 datagridview 我正在尝试绑定它来显示数据 DataSet dataSet new DataSet DataTable dataTable dataSet Tables Add
  • 如何使用 tkinter filedialog.askopenfilename 方法避免文件选择器中隐藏文件?

    我想允许用户从文件管理器中选择 CSV 文件 但它也显示了所有隐藏文件夹 这是非常不合适的 如何避免隐藏文件夹 def importCSV self self file filedialog askopenfilename initiald
  • SQL Server 中表变量可以拥有的最大记录数

    是否有任何约束来限制表变量中可以拥有的记录数量 如果是 表变量可以容纳的最大记录数是多少 我必须编写一个存储过程来处理大约 1000 条记录 我需要使用表变量或临时表吗 因此 MSDN 官方网站SQL Server 的最大容量规格表变量没有
  • 如何在 iOS 10 中安装自签名证书

    Apple 似乎在 iOS 10 中删除了信任自签名 SSL 证书的功能 我创建了自己的自签名证书 并拥有一个使用我的证书签名的本地 Web 服务器 我必须在 iOS 中安装我的证书才能在本地进行测试 因为我开发了一个需要信任我的证书的 i
  • 增强的 for 循环不适用于将值分配给数组(Java)[重复]

    这个问题在这里已经有答案了 我不明白为什么我不能使用增强的 for 循环为数组的元素赋值 例如 像这样使用 for 循环 int array new int 5 for int i 0 i lt 5 i array i 10 产生我想要的东
  • 用GD创建一张包含其他图像的图片

    我想用PHP用GD创建一张由不同的其他图片组成的图片 例如 我有 6 张 或更多 图片 我想创建一张包含这些不同图片的图片 困难在于我的最终图片必须具有固定的宽度和高度 304x179 因此如果不同的图片太大 则必须将其剪切 这是来自 Ic