我有4个小JPEG图像(40px x 30px),我想用GD创建一个图像。
顶部有两个,底部有两个。
像这样:
[][]
[][]
怎么办呢?
答案 0 :(得分:5)
您需要使用的功能是
这是一些未经测试的代码,它遍历tile数组以创建它。它使用常量来表示宽度和高度。
<?php
define('TILE_WIDTH', 40);
define('TILE_HEIGHT', 30);
$tiles = array(
array('tile1.jpeg', 'tile2.jpeg'),
array('tile3.jpeg', 'tile4.jpeg'),
);
$saveTo = 'result.jpeg';
$image = imagecreate(TILE_WIDTH * 2, TILE_HEIGHT * 2);
foreach($tiles as $row => $columns) {
foreach($columns as $col => $filename) {
$tile = imagecreatefromjpeg($filename);
imagecopy($image, $tile, $row * TILE_WIDTH, $col * TILE_HEIGHT, 0, 0, TILE_WIDTH, TILE_HEIGHT);
}
}
imagejpeg($image, $saveTo);
如果您只想显示图像,则不要将第二个参数传递给imagejpeg,但需要将标题内容类型设置为image / jpeg。