imagick获取图片的大小bug
<? php
/*
imagick的获取图片的高度和宽度函数有问题,使用GD函数可获得正确结果
gd函数
array getimagesize ( string $filename [, array &$imageinfo ] )
getimagesize() 函数将測定不论什么 GIF,JPG,PNG,SWF。SWC。PSD。TIFF,BMP,IFF。JP2,JPX。JB2。JPC,XBM 或 WBMP 图像文件的大小并返回图像的尺寸以及文件类型和一个能够用于普通 HTML 文件里 IMG 标记中的 height/width 文本字符串。 返回一个具有四个单元的数组。 索引 0 包括图像宽度的像素值,索引 1 包括图像高度的像素值。 索引 2 是图像类型的标记:1 = GIF。2 = JPG,3 = PNG,4 = SWF,5 = PSD。6 = BMP。7 = TIFF(intel byte order)。8 = TIFF(motorola byte order)。9 = JPC。10 = JP2,11 = JPX。12 = JB2,13 = SWC,14 = IFF,15 = WBMP。16 = XBM。这些标记与 PHP 4.3.0 新加的 IMAGETYPE 常量相应。 索引 3 是文本字符串。内容为“height="yyy" width="xxx"”。可直接用于 IMG 标记。
*/
$new_filename = '14054076904103.gif'; /* 使用imagick的函数处理 */
$imagick = new Imagick($new_filename);
$real_width = $imagick->getImageWidth();
$real_height = $imagick->getImageHeight();
error_log('real_width: '.$real_width.' real_height: '.$real_height); // $srcImage = $imagick->getImageGeometry();
error_log('real_width: '.$srcImage["width"].' real_height: '.$srcImage["height"]); /* 使用GD的函数处理 */
$image_size = getimagesize($new_filename);
error_log('a............. width:'.$image_size[0].'............. height:'.$image_size[1]); /*
所打出的error log,图片的真实高度和宽度是 500x500
[Tue Jul 15 02:45:15 2014] [error] [client 192.168.2.105] real_width: 337 real_height: 367
[Tue Jul 15 02:45:15 2014] [error] [client 192.168.2.105] real_width: 337 real_height: 367
[Tue Jul 15 02:45:15 2014] [error] [client 192.168.2.105] a............. width:500............. height:500
[Tue Jul 15 02:45:15 2014] [error] [client 192.168.2.105] 2 real_width: 337 real_height: 367
[Tue Jul 15 02:45:15 2014] [error] [client 192.168.2.105] $width = 337 $height = 367
*/
所处理的图片14054076904103.gif
版权声明:本文博客原创文章,博客,未经同意,不得转载。
imagick获取图片的大小bug的更多相关文章
- 限制Xamarin获取图片的大小
限制Xamarin获取图片的大小在App开发中,经常会使用网络图片.因为这样不仅可以减少App的大小,还可以动态更新图片.但是手机使用网络环境千差万别.当网络环境不是理想的情况下,加载网络图片就是一个 ...
- 获取图片的大小(宽高):BytesIO
获取图片的大小(宽高) from io import BytesIO,StringIO import requests from PIL import Image img_url = "ht ...
- js获取图片原始大小
摘要: 浏览器中显示的图片大小未必是他真实的高和宽,比如像下面这样,我们给他加上宽和高的样式 <img src="IE.png" style="width:25px ...
- Android获取图片实际大小兼容平板电脑
项目中有个图片在平板电脑中显示特别小的原因.一直苦于没找到原因,也没有平板电脑測试,今天找了个改动分辨率的,编写相关方法最终处理了,记录下比較: 好让以后不造轮子. 主要是获取文章相关图片显示问题.直 ...
- Java不需要加载整张图片而获取图片的大小
转载地址 http://blog.jdk5.com/zh/java-get-image-size-without-loading-the-whole-data/ 利用Java类,获取图片的类型,宽度和 ...
- Java 获取图片的大小、宽、高
参考:https://www.cnblogs.com/hongten/archive/2012/11/26/hongten_java_ImageReader_BufferedImage.html im ...
- html5plus 从相册选择图片后获取图片的大小
plus.gallery.pick(function (filePath) { plus.io.resolveLocalFileSystemURL(filePath, function (entry) ...
- 通过url动态获取图片大小方法总结
很多时候再项目中,我们往往需要先获取图片的大小再加载图片,但是某些特定场景,如用过cocos2d-js的人都知道,在它那里只能按比例缩放大小,是无法设置指定大小的图片的,这就是cocos2d-js 的 ...
- JS获取图片实际宽高及根据图片大小进行自适应
JS获取图片实际宽高,以及根据图片大小进行自适应 <img src="http://xxx.jpg" id="imgs" onload="ad ...
随机推荐
- 使用javascript开发2048
嗯,团队队友开发了一个简单的2048...哈哈,没办法,这游戏那么疯狂,必须搞搞啦,大家能够直接粘贴代码到一个html文件,直接执行就可以 依赖文件:jquery,假设乜有,大家能够自己下载一份 &l ...
- Drupal 7 电子邮件的发送设置 SMTP, Mail System, Mime Mail
尽管Drupal自带发送email功能,可是非常多server须要SMTP验证.这个时候就须要安装 SMTP 模块. 激活 SMTP 模块 进入配置 admin/config/system/smtp ...
- C++ 中的比較函数
在敲代码的时候,排序是一种和经常使用的算法.在排序中.比較又是当中最经常使用的操作.这里,我们来分析一下C++中的比較问题. 当中,基本数据类型int. float.string等已经提供了默认的比較 ...
- Tomcat7.0设置虚拟文件夹
(1)眼下,我们的网站网站都是放在默认的文件夹下:tomcat/webapps/下的.可是,在某种情况下.我们须要把网站放到其它的文件夹,比方:tomcat所在磁盘的空间不足: 或者为了项目的统一管理 ...
- Windows Phone开发(24):启动器与选择器之发送短信
原文:Windows Phone开发(24):启动器与选择器之发送短信 本节我们通过一个简单的发送短信示例来演示一下如果配合使用PhoneNumberChooserTask和SmsComposeTas ...
- usb host鼠标不能使用原因
linux kernel 3.4.5的板子插入USB鼠标,出现例如以下错误LOG: [ 191.177508] Plug in USB Port2 [ 191.363516] usb 1-1: n ...
- Canvas翻转方法
// 普通抽奖: // ctx.drawImage(img, px, py); // 级别"翻转"帆布 ctx.translate(canvas_width, 0); ctx. ...
- 【Linux探索之旅】第二部分第二课:命令行,世界尽在掌握
内容简介 1.第二部分第二课:命令行,世界尽在掌握 2.第二部分第三课预告:文件和目录,组织不会亏待你 命令行,世界尽在掌握 今天的标题是不是有点霸气侧漏呢? 读者:“小编,你为什么每次都要起这么非主 ...
- —页面布局实例———win7自己的小算盘
晚上7各地点布局,9点半,刚拿到. 他发现自己专注的时候效率挺高真的哈萨克斯坦.计算器布局前.做了两件简单的页面布局练练手.今晚总体感觉更好,不难. 器之间调试有点蛋疼,真心不想搭理IE. 在进行布局 ...
- Apple Watch 1.0 开发介绍 1.1 简介 开发苹果手表
使用Apple Watch,用户可以使用一种不显眼的方式查看信息.不用把iPhone从口袋里拿出来,就可以通过看一下手表快速获得重要信息. 作为Apple Watch的第三方app开发者,应该通过使用 ...