1

我想将图像作为背景图像添加到由我的 PHP 代码创建的图像中

<?php
header('Content-type: image/gif');
// Fetch GET params
$mode = isset($_GET["mode"]) ? strip_tags($_GET["mode"]) : "big";
$url = isset($_GET["text"]) ? $_GET["text"] : "This is an Invalid Code";

// Get size depending on mode
$size = ($mode && $mode == "small") ? "36" : "200";
// Get chart data. Limit data length if mode is small
$chl = ($mode && $mode == "small") ? substr($url, 0, 33) : $url;
// Assemble chart image URL
$imgUrl = "http://chart.apis.google.com/chart?chs=" . $size . "x" . $size . "&cht=qr&chld=H|0&chl=" . $chl;

// Load, transform and write transparent QR code image
$im = imagecreatefrompng($imgUrl);
imagetruecolortopalette($im, false, 2);
$white = imagecolorclosest($im, 0, 0, 0);
imagecolortransparent($im, $white);
imagegif($im);
imagedestroy($im);
?>

图像位于同一台服务器上

http://www.example.com/img/sitebg.png

我试过的

<?php
header('Content-type: image/gif');
// Fetch GET params
$mode = isset($_GET["mode"]) ? strip_tags($_GET["mode"]) : "big";
$url = isset($_GET["text"]) ? $_GET["text"] : "This is an Invalid Code";

// Get size depending on mode
$size = ($mode && $mode == "small") ? "36" : "200";
// Get chart data. Limit data length if mode is small
$chl = ($mode && $mode == "small") ? substr($url, 0, 33) : $url;
// Assemble chart image URL
$imgUrl = "http://chart.apis.google.com/chart?chs=" . $size . "x" . $size . "&cht=qr&chld=H|0&chl=" . $chl;

// Load, transform and write transparent QR code image
$im2 = imagecreatefrompng("http://www.example.com/example/img/BG.png");
$im = imagecreatefrompng($imgUrl);
imagetruecolortopalette($im, false, 2);
$white = imagecolorclosest($im, 0, 0, 0);
imagecolortransparent($im, $white);

// Merge the stamp onto our photo with an opacity (transparency) of 50%
imagecopymerge($im, $im2);

// Save the image to file and free memory
imagepng($im);
//imagegif($im);
imagedestroy($im);
?>
4

1 回答 1

4

您想在 bg 图像上绘制图形吗?

然后开始 bij 从背景图像创建图像对象,然后使用命令将其与图形合并imagecopymerge()

  1. 使用 bg 图像创建图像对象
  2. 创建 png 图形作为新的图像对象
  3. 将它们合并在一起
  4. 节目

这是一个如何使用它的示例:单击!

于 2012-07-13T11:16:16.747 回答