php实现图片上传并利用ImageMagick生成缩略图
使用ImageMagick,您可以轻松,更快地创建缩略图,比使用PHP的容易得多。
<?php // Location to upload main image: $mainDir = $_SERVER['DOCUMENT_ROOT'].'/images/l/'; // Location to create the thumb image: $smalDir = $_SERVER['DOCUMENT_ROOT'].'/images/s/'; // Command to use: $command = '/usr/bin/convert'; // Thumbnail width: $size = 210; // Make sure we have an image: if(isset($_POST['submit'])){ if(getimagesize($_FILES['photo']['tmp_name'])){ $name = $_FILES['photo']['name']; $uploadfile = $mainDir . $name; move_uploaded_file($_FILES['photo']['tmp_name'], $uploadfile); $lrgImg = $mainDir . $name; $smlImg = $smalDir . $name; $imageMagick = $command . " '". $lrgImg . "' -resize '$size' '" . $smlImg . "'"; shell_exec($imageMagick); } header("Location: /test.php"); exit; }else{ ?> <form action=" <?php echo $_SERVER['PHP_SELF']; ?> " method="post" enctype="multipart/form-data"> <p><input type="file" name="photo" /></p> <p><input type="submit" value="Upload!" name="submit" /></p> </form> <?php foreach(glob($smalDir.'*') as $img){ echo ' <img src="'.str_replace($_SERVER['DOCUMENT_ROOT'], '',$img).'" /> '; } } ?>
希望本文所述对大家学习php程序设计有所帮助。
相关推荐
-
基于GD2图形库的PHP生成图片缩略图类代码分享
要使用PHP生成图片缩略图,要保证你的PHP服务器安装了GD2图形库 使用一个类生成图片的缩略图 1.使用方法 $resizeimage = new resizeimage("图片源文件地址", "200", "100", "0","缩略图地址"); //就只用上面的一句话,就能生成缩略图,其中,源文件和缩略图地址可以相同,200,100分别代表宽和高 2. 缩略图类代码 //使用如下类就可以生成图片缩略图
-
PHP批量生成图片缩略图的方法
本文实例讲述了PHP批量生成图片缩略图的方法.分享给大家供大家参考.具体如下: <?php //用PHP批量生成图片缩略图 function mkdirs($dirname,$mode=0777) //创建目录(目录, [模式]) { if(!is_dir($dirname)) { mkdirs($dirname,$mode); //如果目录不存在,递归建立 return mkdir($dirname,$mode); } return true; } function savefile($fil
-
php图片的裁剪与缩放生成符合需求的缩略图
图片太大且规格不统一,显示的控制需要靠JavaScript来完成,用在移动设备上时显示效果不好且流量巨大,需要对现有图片库的图片进行一次处理,生成符合移动设备用的缩略图,将原来客户端JS做的工作转移到服务器端用PHP的GD库来集中处理. 图片源与需要的大小: 复制代码 代码如下: $src_img = "wallpaper.jpg"; $dst_w = 300; $dst_h = 200; 剪裁图像,保证图像区域最大化显示,并按比例缩放到指定大小. 一开始采用了 imagecopyre
-
jquery+php+ajax显示上传进度的多图片上传并生成缩略图代码
本例用到其他2个php class.upload.php和 functions.php还有css和js以及img文件 完整实例代码点击此处本站下载. 效果图如下: 实现代码如下: JavaScript代码如下: 复制代码 代码如下: <script type="text/javascript"> $(document).ready(function() { $("#filelist").niceScroll({ cursor
-
PHP用GD库生成高质量的缩略图片
以下是PHP源代码(ResizeImage.php). 复制代码 代码如下: <?php $FILENAME="image.thumb"; // 生成图片的宽度 $RESIZEWIDTH=400; // 生成图片的高度 $RESIZEHEIGHT=400; function ResizeImage($im,$maxwidth,$maxheight,$name){ $width = imagesx($im); $height = imagesy($im); if(($maxwidt
-
php生成图片缩略图功能示例
本文实例讲述了php生成图片缩略图功能.分享给大家供大家参考,具体如下: 完整代码如下(为方便阅读,代码使用http://tools.jb51.net/code/phpformat进行了格式化处理): <?php /* * Created on 2011-3-18 * * To change the template for this generated file go to * Window - Preferences - PHPeclipse - PHP - Code Templates *
-
php实现按指定大小等比缩放生成上传图片缩略图的方法
本文实例讲述了php实现按指定大小等比缩放生成上传图片缩略图的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: /** * * *等比缩放 * @param unknown_type $srcImage 源图片路径 * @param unknown_type $toFile 目标图片路径 * @param unknown_type $maxWidth 最大宽 * @param unknown_type $maxHeight 最大高 * @par
-
PHP Imagick完美实现图片裁切、生成缩略图、添加水印
本文实例讲解了PHP使用Imagick 裁切.生成缩略图.添加水印自动检测和处理,支持gif,分享给大家供大家参考,具体内容如下 调用方式: include 'imagick.class.php'; $image = new lib_image_imagick(); $image->open('a.gif'); $image->resize_to(100, 100, 'scale_fill'); $image->add_text('1024i.com', 10, 20); $image-
-
php实现上传图片生成缩略图示例
功能很简单,代码中有注释,直接给大家上代码了 复制代码 代码如下: <?php/** * 上传图片生成缩略图 * * 需要GD2库的支持 * * 初始化时需要参数new thumbnails('需要缩略的图片的原始地址','缩略图的宽度','缩略图的高度','(可选参数)缩略图的保存路径'); * 如果最后一个参数不指定,那么缩略图就默认保存在原始图片的所在目录里的small文件夹里, * 如果不存在small文件夹,则会自动创建small文件夹 * * 初始化之后需要调用方法produc
-
基于PHP服务端图片生成缩略图的方法详解
复制代码 代码如下: <?php//定义缩略图片尺寸$picSize = array( '100_100'=> 1, '200_100'=> 1 );$imagePath = "../image/";function parseUrl($url){ preg_match("/(?P<name>[\w\d]+)_w(?P<width>\d+)_h(?P<h
-
使用PHP生成图片的缩略图的方法
功能:支持jpg,jpeg,gif,png,bmp图片格式,支持按原图片的比例进行缩放,可以选择在图片缩放的过程中是否需要对图片进行裁切,加入了图片质量控制,可以实现缩略图片质量最高化.完整类的代码如下: <?php /** * 功能:php生成缩略图片的类 */ class ResizeImage{ public $type;//图片类型 public $width;//实际宽度 public $height;//实际高度 public $resize_width;//改变后的宽度 publi
-
php上传图片生成缩略图(GD库)
首先来一段简单的php上传图片生成缩略图的详细代码,分享给大家供大家参考,具体内容如下 <?php function createThumbnail($imageDirectory, $imageName, $thumbDirectory, $thumbWidth, $quality){ $details = getimagesize("$imageDirectory/$imageName") or die('Please only upload images.'); $type
-
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
裁剪示例: 最终裁剪成的图片: 其中虚线框内就是要裁剪出来的图片,最终保存成100宽的图片.代码如下: 复制代码 代码如下: $src_path = '1.jpg';//创建源图的实例$src = imagecreatefromstring(file_get_contents($src_path)); //裁剪开区域左上角的点的坐标$x = 100;$y = 12;//裁剪区域的宽和高$width = 200;$height = 200;//最终保存成图片的宽和高,和源要等比例,否则会变形$fi
随机推荐
- secedit.exe本地安全策略命令使用方法
- js中实现多态采用和继承类似的方法
- GO语言常用的文件读取方式
- java多线程详细总结
- 几种tab切换详解
- javascript实现的平方米、亩、公顷单位换算小程序
- SqlServer数据库全角转换成半角
- 浅谈标签和JLabel类构造方法 原创
- Java 中HashCode作用_动力节点Java学院整理
- 简单比较C语言中的execl()函数与execlp()函数
- 关于PHP5 Session生命周期介绍
- 深入浅析JSONAPI在PHP中的应用
- vue里如何主动销毁keep-alive缓存的组件
- python 中pyqt5 树节点点击实现多窗口切换问题
- vue引入微信sdk 实现分享朋友圈获取地理位置功能
- 浅谈Spring自定义注解从入门到精通
- jsp filter 过滤器功能与简单用法示例
- MySQL中常见的八种SQL错误用法示例
- python traceback捕获并打印异常的方法
- jquery无缝图片轮播组件封装