Imagick::setImageBackgroundColor

(PECL imagick 2, PECL imagick 3)

Imagick::setImageBackgroundColorSets the image background color

说明

public Imagick::setImageBackgroundColor ( mixed $background ) : bool

Sets the image background color.

参数

background

返回值

成功时返回 true

错误/异常

错误时抛出 ImagickException。

更新日志

版本 说明
PECL imagick 2.1.0 Now allows a string representing the color as the parameter. Previous versions allow only an ImagickPixel object.

User Contributed Notes

mjunaidahmad at outlook dot com 28-Jul-2017 06:02
<?php

  $im
= new \Imagick();

       
/* read image (914x784) */
  
    
$im->readImage($_SERVER['DOCUMENT_ROOT']."/path/toimage/".$inputfront);
       
       
$im->setImageBackgroundColor(new \ImagickPixel('transparent')); /* this is equal to -background none (in imagemagick command options ) */
 
        /*Control points for the distortion in order to check weather setImageBackgound is working properly*/

       
$controlPoints = array( 0,0,
           
280,0,

           
994,0,
           
914,50,

           
994,862,
           
784,842,

           
0,862,
           
110,762);

       
/* Perform the distortion */
       
$im->distortImage(\Imagick::DISTORTION_PERSPECTIVE, $controlPoints, true);

       
/* Ouput the image */
       
$output_front_distort="Projects/path/where you want to store image/distorted_book.png";
   
      
header("Content-Type: image/png");
       
$im->writeImage($_SERVER['DOCUMENT_ROOT']."/designerr/public/".$output_front_distort);

?>
Matthias Zartmann 17-Jun-2014 08:33
Small example to optimize a gray scanned image:
<?php
   $im
= new Imagick();
  
$im->readImage("~/scaninput_300DPI.tiff");
 
//deskew the image
  
$im->deskewImage(40);
 
//Crop to A4 and scanner pageoffset 50
  
$im->cropImage(2480, 3416, 50, 0);
 
//Need a Monochrome Image
  
$im->setImageColorspace(2);
  
$im->thresholdImage(11000);
 
//Compressen tiff CCITT Group 4
  
$im->setImageCompression(Imagick::COMPRESSION_GROUP4);
  
$im->writeimage("~/monochrome_300DPI.tiff");
 
//Cleanup  
  
$im->clear();
  
$im->destroy();
?>