小编use*_*801的帖子

如何在使用PHP调整大小时保持PNG的透明背景?

我在使用PHP调整图片大小时遇到​​问题,特别是对于具有透明背景的PNG文件,而不是保持透明背景,它会变成黑色背景.我怎样才能解决这个问题?

这是用于调整大小的脚本:

<?php         
class resize{

   var $image;
   var $image_type;

   function load($filename) {

      $image_info = getimagesize($filename);
      $this->image_type = $image_info[2];
      if( $this->image_type == IMAGETYPE_JPEG ) {

         $this->image = imagecreatefromjpeg($filename);
      } elseif( $this->image_type == IMAGETYPE_GIF ) {

         $this->image = imagecreatefromgif($filename);
      } elseif( $this->image_type == IMAGETYPE_PNG ) {

         $this->image = imagecreatefrompng($filename);
      }
   }
   function save($filename, $image_type=IMAGETYPE_JPEG, $compression=85, $permissions=null) {

      if( $image_type == IMAGETYPE_JPEG ) {
         imagejpeg($this->image,$filename,$compression);
      } elseif( $image_type == IMAGETYPE_GIF ) {

         imagegif($this->image,$filename);
      } elseif( $image_type == IMAGETYPE_PNG ) {




         imagepng($this->image,$filename);
      }
      if( …
Run Code Online (Sandbox Code Playgroud)

php png resize colors transparent

4
推荐指数
1
解决办法
4864
查看次数

标签 统计

colors ×1

php ×1

png ×1

resize ×1

transparent ×1