Bildkomprimierung ist ein Vorgang, der in unserer täglichen Entwicklung häufig verwendet wird. In heutigen Situationen, in denen es viele Anforderungen gibt, wird ein hochgeladenes Bild jedes Mal in Bilder mit unterschiedlichen Proportionen komprimiert Wir haben eine Operationsklasse zum Komprimieren von Bildern gekapselt. Ich hoffe, dass Sie sich nach der Begegnung nicht mehr darum kümmern müssen, viel Code zum Komprimieren von Bildern zu schreiben.
Tools zum Komprimieren von Bildern:
<?php /** 图片压缩操作类 v1.0 */ class Image{ private $src; private $imageinfo; private $image; public $percent = 0.1; public function __construct($src){ $this->src = $src; } /** 打开图片 */ public function openImage(){ list($width, $height, $type, $attr) = getimagesize($this->src); $this->imageinfo = array( 'width'=>$width, 'height'=>$height, 'type'=>image_type_to_extension($type,false), 'attr'=>$attr ); $fun = "imagecreatefrom".$this->imageinfo['type']; $this->image = $fun($this->src); } /** 操作图片 */ public function thumpImage(){ $new_width = $this->imageinfo['width'] * $this->percent; $new_height = $this->imageinfo['height'] * $this->percent; $image_thump = imagecreatetruecolor($new_width,$new_height); //将原图复制带图片载体上面,并且按照一定比例压缩,极大的保持了清晰度 imagecopyresampled($image_thump,$this->image,0,0,0,0,$new_width,$new_height,$this->imageinfo['width'],$this->imageinfo['height']); imagedestroy($this->image); $this->image = $image_thump; } /** 输出图片 */ public function showImage(){ header('Content-Type: image/'.$this->imageinfo['type']); $funcs = "image".$this->imageinfo['type']; $funcs($this->image); } /** 保存图片到硬盘 */ public function saveImage($name){ $funcs = "image".$this->imageinfo['type']; $funcs($this->image,$name.'.'.$this->imageinfo['type']); } /** 销毁图片 */ public function __destruct(){ imagedestroy($this->image); } } ?>
Test:
<?php require 'image.class.php'; $src = "001.jpg"; $image = new Image($src); $image->percent = 0.2; $image->openImage(); $image->thumpImage(); $image->showImage(); $image->saveImage(md5("aa123")); ?>
Ergebnis:
Mehr PHP-Kenntnisse, bitte Besuchen Sie das PHP-Tutorial!
Das obige ist der detaillierte Inhalt vonPHP komprimiert Bilder in einem bestimmten Verhältnis (wodurch die Klarheit erhalten bleibt). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!