PHP图像 - 将图像添加到使用PHP创建的另一个图像上

时间:2013-08-07 10:19:32

标签: php image gd

基本上我必须使用ID卡PHP的东西,要求我添加参与者的名字并上传图片。我有一个ID卡的基本模板,我正在使用PHP来添加名称。我必须在特定地点添加参与者的图片。该名称正在运行,但我无法在生成的PHP映像上添加参与者的图片。这是我的代码:

http://chopapp.com/#arcqwgf4

我应该如何在PHP生成图像上添加图片。

很抱歉,如果这令人困惑:/

3 个答案:

答案 0 :(得分:0)

使用Imagick进行类似的操作。有一个名为combineImages()的方法,您可以使用该方法实现目标。

答案 1 :(得分:0)

您已经使用GD的大部分方式,您需要做的是使用imagecopymerge在基本图像上的指定点上绘制一个图像。 PHP.net在链接页面上有很多例子。

答案 2 :(得分:0)

你可以在php中使用imagecopyresampled方法。

我在这里创建了一个示例:http://artuc.my.phpcloud.com/artuc/类型名称,id并选择要放置它的图像。

以下是我使用的代码:

header('Content-Type: image/jpeg');
    $canvasImage = imagecreatefromjpeg('sample.jpg');
    $bgcolor = imagecolorallocate($canvasImage, 255, 255, 255);
    imagefill($canvasImage, 0, 0, $bgcolor);

    //Place person picture
    $bgImage = $_POST['idPic'];
    $img = imagecreatefromjpeg($bgImage);
    $imageSize = getimagesize($bgImage);
    imagecopyresampled($canvasImage, $img, 15, 17, 0, 0, $imageSize[0], $imageSize[1], $imageSize[0], $imageSize[1]);

    $fontFile = "Arial.ttf";
    //Place person name
    $black = imagecolorallocate($canvasImage, 0, 0, 0);
    imagettftext($canvasImage, 18, 0, 220, 35, $black, $fontFile, $_POST['idName']);

    //Place person id
    $black = imagecolorallocate($canvasImage, 0, 0, 0);
    imagettftext($canvasImage, 18, 0, 220, 75, $black, $fontFile, $_POST['idNum']);

    //Save Image
    imagejpeg($canvasImage);
    imagedestroy($canvasImage);