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

Jen*_*sen 6 php gd image

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

困难在于我的最终图片必须具有固定的宽度和高度(304x179),因此如果不同的图片太大,则必须剪切它们.这是IconFinder的一个例子:

这张照片有6张图片http://cdn.iconfinder.net/design/images/_thumbs/is_twitter.png

该图片由6幅图像组成,但第3只鸟(绿色)被切割,4,5和6被切割成底部.这就是我想要的,你能给我一些帮助,用PHP编写这段代码吗?

谢谢

JYe*_*ton 13

创建主图像并将其视为"画布".

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

看到这个例子:

<?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);
?>
Run Code Online (Sandbox Code Playgroud)

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

编辑

我将代码调整为与您正在进行的操作更相似.