php创建图像并添加背景图像

时间:2012-07-13 10:58:44

标签: php image imagecreatefrompng

我想将图像作为背景图像添加到我的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);
?>

1 个答案:

答案 0 :(得分:3)

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

然后只需从背景图像中启动bij创建图像对象,然后使用命令imagecopymerge()将其与图形合并。

  1. 使用bg图像创建图像对象
  2. 将png图创建为新图像对象
  3. 将它们合并在一起
  4. 显示
  5. 以下是如何使用它的示例:click!

相关问题