📜  PHP | imagick steganoImage()函数

📅  最后修改于: 2022-05-13 01:56:49.770000             🧑  作者: Mango

PHP | imagick steganoImage()函数

ImagickDraw::steganoImage()函数是PHP中的一个内置函数,用于隐藏图像中的数字水印。水印也可以是简单的文本或图像。通常,彩色图像会因此而失真。隐藏的水印可以稍后恢复以证明图像的真实性。偏移量定义图像中隐藏水印的起始位置。虽然需要恢复图像偏移。

句法:

Imagick ImagickDraw::steganoImage( Imagick $watermark_wand, int $offset )

参数:该函数接受上面提到的两个参数,如下所述:

  • $watermark_wand:它指定秘密水印棒。
  • $offset:它指定用于恢复水印带的秘密偏移量。

返回值:此函数返回一个包含水印图像的 Imagick 对象。

异常:此函数在出错时抛出 ImagickException。

下面的程序说明了PHP中的ImagickDraw::steganoImage()函数

方案一:

steganoImage($watermark, 64);
  
// Write image to the local folder
$imagick->writeImage('output.png');
  
// Set the offset
$imagick->setSizeOffset($watermark->getImageWidth(),
                   $watermark->getImageHeight(), 64);
  
// Read the encoded image and extract secret
$imagick->readImage('STEGANO:output.png');
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

输出:

方案二:

steganoImage($watermark, 10);
  
// Write image to the local folder
$imagick->writeImage('output.png');
  
// Set the offset
$imagick->setSizeOffset($watermark->getImageWidth(),
                   $watermark->getImageHeight(), 10);
  
// Read the encoded image and extract secret
$imagick->readImage('STEGANO:output.png');
  
// Show the output
$imagick->setImageFormat('png');
header("Content-Type: image/png");
echo $imagick->getImageBlob();
?>

输出:

参考: https://www. PHP.net/manual/en/imagick.steganoimage。 PHP