Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
将图像(PNG/JPG)添加到动画gif(PHP iMagick)_Php_Imagemagick_Imagick_Animated Gif - Fatal编程技术网

将图像(PNG/JPG)添加到动画gif(PHP iMagick)

将图像(PNG/JPG)添加到动画gif(PHP iMagick),php,imagemagick,imagick,animated-gif,Php,Imagemagick,Imagick,Animated Gif,我使用的是imagick(PHP)版本,基本上是在动画gif中添加文本和徽标。我成功地添加了文本,这非常棒。但我正努力使用以下方法添加图像: $gif = new Imagick(); $gif->readImage('images/highres/bg/' . $bgimg . '.gif'); foreach ($gif as $frame) { $img = new Imagick(); $img->readImageB

我使用的是imagick(PHP)版本,基本上是在动画gif中添加文本和徽标。我成功地添加了文本,这非常棒。但我正努力使用以下方法添加图像:

    $gif = new Imagick();
    $gif->readImage('images/highres/bg/' . $bgimg . '.gif');
    foreach ($gif as $frame) {
        $img = new Imagick(); 
        $img->readImageBlob($frame);
        $canvas->addImage( $img );  
      //$canvas->compositeImage($img, Imagick::COMPOSITE_DEFAULT, 0, 0); NOT WORKING
        $canvas->setImageDelay( $img->getImageDelay() ); 
    //$img->clear();
    //Add Logo
    //$logo         = new Imagick();
    //$logo->readImage('images/uploads/155x100.jpg');
    //$canvas->compositeImage($logo, Imagick::COMPOSITE_DEFAULT, 500, 500); NOT WORKING
    //$canvas->addImage( $logo ); 
}
此外,我正在努力使用X,Y坐标定位


有什么想法吗?

这可能对你有所帮助

<?php
if (isset($_FILES["file"])) {
    $tmpFile = $_FILES["file"]["tmp_name"];
    $fileName = ... // determine secure name for uploaded file

    list($width, $height) = getimagesize($tmpFile);
    // check if the file is really an image
    if ($width == null && $height == null) {
        header("Location: index.php");
        return;
    }
    // resize if necessary
    if ($width >= 400 && $height >= 400) {
        $image = new Imagick($tmpFile);
        $image->thumbnailImage(400, 400);
        $image->writeImage($fileName);
    }
    else {
        move_uploaded_file($tmpFile, $fileName);
    }
}

我不确定上面的内容是如何起作用的?tfw您不确定,所以您可以复制粘贴任何工作代码