PHP GD库无法使用函数合并到图像

PHP GD库无法使用函数合并到图像,php,gd,gdlib,Php,Gd,Gdlib,这是我要合并到图像的php类 mergepic.php class mergepic{ public function merge_barchart_drawing($object,$obj) { $src = imagecreatefrompng($obj->barchart()); $dest = imagecreatefrompng($object->drawing()); //$src = imagecreatefro

这是我要合并到图像的php类

mergepic.php

class mergepic{
    public function merge_barchart_drawing($object,$obj)
    {
     $src = imagecreatefrompng($obj->barchart());
        $dest = imagecreatefrompng($object->drawing());
        //$src = imagecreatefrompng('http://localhost/graph/barchart.php?barchart='.$_GET['barchart'].'&max='.$_GET['max'].'&digit='.$_GET['digit']);
        //$dest = imagecreatefrompng('http://localhost/graph/drawing.php?drawings='.$_GET['drawings'].'&max='.$_GET['max'].'&digit='.$_GET['digit']);
        imagealphablending($dest, false);
        imagesavealpha($dest, true);
        imagecopymerge($dest, $src, 10, 9, 0, 9, 700, 500, 100); //have to play with these numbers for it to work for you, etc.
        header('Content-Type: image/png');
        imagepng($dest); 
        imagedestroy($dest); 
        imagedestroy($src); 
    }
}
创建_obj,php

<?
include('drawing.php');
include('barchart.php');
include('mergepic_class.php');
$draw = new drawgraph();
$barchart = new barchart_graph();
$merge_draw = new mergepic();
$merge_draw_bar = $merge_draw->merge_barchart_drawing($draw,$barchart); 
?>

如果我运行creating_obj.php我只得到一个图像文件,而不是合并两个图像。如果我在
imagecreatefrompng()中使用url,而不是类,那么它工作正常

有什么想法吗

function barchart(){
    return $canvas;
}
或者(如果要将此图层图像保存到磁盘):


对另一个(drawing)类也要这样做。

因为您调用的$obj->barchart()和$object->drawing()两个类的函数在mergepic类中不可用。@SyedQarib在创建_obj.php文件时,我传递了创建两个名为$draw和$barchart的对象。我在merge\u barchart\u drawing($draw,$barchart)中传递了这两个对象,在mergepic.php文件中得到$object和$obj,对吗way@SyedQarib我发现这个问题不知道怎么解决,你能帮我吗。prb是行$src=imagecreatefrompng($obj->barchart());这一行生成一个条形图图像并显示出来,程序在此之后不执行。但是,如果我使用url,就不用函数object了,它工作得很好。你的barchart()函数应该只返回图像的路径。。或图像对象..@SyedQarib头(“内容类型:image/png”);图像PNG(画布);图像销毁(帆布);返回;这就是我的图像文件返回的方式这是正确的
function barchart(){
    $path = {path where to save file};
    $filename = {filename to save and extension};

    imagepng($canvas,$path.$filename);

    return $path.$filename;
}