当前位置: 首页>>代码示例>>PHP>>正文


PHP resource::setImageCompressionQuality方法代码示例

本文整理汇总了PHP中resource::setImageCompressionQuality方法的典型用法代码示例。如果您正苦于以下问题:PHP resource::setImageCompressionQuality方法的具体用法?PHP resource::setImageCompressionQuality怎么用?PHP resource::setImageCompressionQuality使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在resource的用法示例。


在下文中一共展示了resource::setImageCompressionQuality方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: save

 /**
  * 保存图像
  * @param  string  $imgname   图像保存名称
  * @param  string  $type      图像类型
  * @param  integer $quality   JPEG图像质量
  * @param  boolean $interlace 是否对JPEG类型图像设置隔行扫描
  */
 public function save($imgname, $type = null, $quality = 80, $interlace = true)
 {
     if (empty($this->img)) {
         E('没有可以被保存的图像资源');
     }
     //设置图片类型
     if (is_null($type)) {
         $type = $this->info['type'];
     } else {
         $type = strtolower($type);
         $this->img->setImageFormat($type);
     }
     //JPEG图像设置隔行扫描
     if ('jpeg' == $type || 'jpg' == $type) {
         $this->img->setImageInterlaceScheme(1);
     }
     // 设置图像质量
     $this->img->setImageCompressionQuality($quality);
     //去除图像配置信息
     $this->img->stripImage();
     //保存图像
     $imgname = realpath(dirname($imgname)) . '/' . basename($imgname);
     //强制绝对路径
     if ('gif' == $type) {
         $this->img->writeImages($imgname, true);
     } else {
         $this->img->writeImage($imgname);
     }
 }
开发者ID:amaranth0203,项目名称:Sources,代码行数:36,代码来源:Imagick.class.php

示例2: resize

 /**
  * 缩略(放大)图片
  * @param int $thumbWidth 缩放的最大宽度
  * @param int $thumbHeight 缩放的最大高度
  * @param bool $magnify 是否允许放大图片
  * @return bool 成功返回true,失败返回false
  */
 public function resize($thumbWidth = 0, $thumbHeight = 0, $magnify = true)
 {
     $width = $this->getWidth();
     $height = $this->getHeight();
     do {
         //定宽缩放
         if ($thumbHeight === 0) {
             $thumbHeight = $thumbWidth / $width * $height;
             break;
         }
         //定高缩放
         if ($thumbWidth === 0) {
             $thumbWidth = $thumbHeight / $height * $width;
             break;
         }
         //等比例缩放
         if ($width / $thumbWidth > $height / $thumbHeight) {
             $ratio = $thumbWidth / $width;
         } else {
             $ratio = $thumbHeight / $height;
         }
         $thumbWidth = $width * $ratio;
         $thumbHeight = $height * $ratio;
     } while (0);
     //由于图片是等比率的,所以只需判断一条边
     if (!$magnify && $thumbWidth >= $width) {
         return true;
     }
     self::$resource->setImageCompressionQuality(90);
     //1-100值越大,越清晰
     return self::$resource->scaleImage($thumbWidth, $thumbHeight);
 }
开发者ID:az0ne,项目名称:diaoyu,代码行数:39,代码来源:BaseModelImage.php

示例3: write

 /**
  * {@inheritdoc}
  */
 public function write($file, $jpeg_quality = null)
 {
     if ($jpeg_quality) {
         $this->resource->setImageCompression(Imagick::COMPRESSION_JPEG);
         $this->resource->setImageCompressionQuality($jpeg_quality);
     }
     return $this->resource->writeImages($file, true);
 }
开发者ID:basekit,项目名称:imanee,代码行数:11,代码来源:ImagickResource.php

示例4: imagickImage

 /**
  * Output imagick image to file
  *
  * @param resource $img imagick image resource
  * @param string $filename The path to save the file to.
  * @param string $destformat The Image type to use for $filename
  * @param int $jpgQuality JEPG quality (1-100)
  * @return bool
  */
 protected function imagickImage($img, $filename, $destformat, $jpgQuality = null)
 {
     if (!$jpgQuality) {
         $jpgQuality = $this->options['jpgQuality'];
     }
     try {
         if ($destformat) {
             if ($destformat === 'gif') {
                 $img->setImageFormat('gif');
             } else {
                 if ($destformat === 'png') {
                     $img->setImageFormat('png');
                 } else {
                     if ($destformat === 'jpg') {
                         $img->setImageFormat('jpeg');
                     }
                 }
             }
         }
         if (strtoupper($img->getImageFormat()) === 'JPEG') {
             $img->setImageCompression(imagick::COMPRESSION_JPEG);
             $img->setImageCompressionQuality($jpgQuality);
             try {
                 $orientation = $img->getImageOrientation();
             } catch (ImagickException $e) {
                 $orientation = 0;
             }
             $img->stripImage();
             if ($orientation) {
                 $img->setImageOrientation($orientation);
             }
         }
         $result = $img->writeImage($filename);
     } catch (Exception $e) {
         $result = false;
     }
     return $result;
 }
开发者ID:lalusaud,项目名称:mysite,代码行数:47,代码来源:elFinderVolumeDriver.class.php


注:本文中的resource::setImageCompressionQuality方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。