Maison > Article > développement back-end > Introduction aux exemples d'images de zoom php
Définissez la largeur, la hauteur et l'échelle dans des proportions inégales ; définissez la largeur et l'échelle dans des proportions égales ; définissez l'échelle proportionnellement à 50 % ; l'utilisation spécifique est la suivante, les amis intéressés peuvent en savoir plus sur
Comment utiliser :
Définir la largeur et la hauteur, et mettre à l'échelle à différentes proportions
Le code est le suivant :
<?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resize(250,400); $image->save('picture2.jpg');?> 设定宽度,等比例缩放 <?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resizeToWidth(250); $image->save('picture2.jpg');?> 设定高度,等比例缩放 <?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resizeToHeight(500); $image->save('picture2.jpg'); $image->resizeToHeight(200); $image->save('picture3.jpg');?> 按比例,缩放至50% <?php include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->scale(50); $image->save('picture2.jpg');?> 缩放后直接输出到屏幕 <?php header('Content-Type: image/jpeg'); include('SimpleImage.php'); $image = new SimpleImage(); $image->load('picture.jpg'); $image->resizeToWidth(150); $image->output();?>
Parfois, lorsque télécharge des images, les images sont trop grandes, ce qui non seulement prend de la place et consomme du trafic , mais affecte également la navigation (les tailles des images varient) ). Partageons une méthode de mise à l'échelle des images dans des proportions égales sans distorsion. De cette façon, quelle que soit la taille de l'image téléchargée, elle sera automatiquement compressée selon la plage de valeurs de taille que nous avons définie. Pratique testée et éprouvée.
<?php function resizeImage($im,$maxwidth,$maxheight,$name,$filetype) { $pic_width = imagesx($im); $pic_height = imagesy($im); if(($maxwidth && $pic_width > $maxwidth) || ($maxheight && $pic_height > $maxheight)) { if($maxwidth && $pic_width>$maxwidth) { $widthratio = $maxwidth/$pic_width; $resizewidth_tag = true; } if($maxheight && $pic_height>$maxheight) { $heightratio = $maxheight/$pic_height; $resizeheight_tag = true; } if($resizewidth_tag && $resizeheight_tag) { if($widthratio<$heightratio) $ratio = $widthratio; else $ratio = $heightratio; } if($resizewidth_tag && !$resizeheight_tag) $ratio = $widthratio; if($resizeheight_tag && !$resizewidth_tag) $ratio = $heightratio; $newwidth = $pic_width * $ratio; $newheight = $pic_height * $ratio; if(function_exists("imagecopyresampled")) { $newim = imagecreatetruecolor($newwidth,$newheight);//PHP系统函数 imagecopyresampled($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height);//PHP系统函数 } else { $newim = imagecreate($newwidth,$newheight); imagecopyresized($newim,$im,0,0,0,0,$newwidth,$newheight,$pic_width,$pic_height); } $name = $name.$filetype; imagejpeg($newim,$name); imagedestroy($newim); } else { $name = $name.$filetype; imagejpeg($im,$name); } } //使用方法: $im=imagecreatefromjpeg("./20140416103023202.jpg");//参数是图片的存方路径 $maxwidth="600";//设置图片的最大宽度 $maxheight="400";//设置图片的最大高度 $name="123";//图片的名称,随便取吧 $filetype=".jpg";//图片类型 resizeImage($im,$maxwidth,$maxheight,$name,$filetype);//调用上面的函数
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!