<?

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的更多相关文章

  1. 限制Xamarin获取图片的大小

    限制Xamarin获取图片的大小在App开发中,经常会使用网络图片.因为这样不仅可以减少App的大小,还可以动态更新图片.但是手机使用网络环境千差万别.当网络环境不是理想的情况下,加载网络图片就是一个 ...

  2. 获取图片的大小(宽高):BytesIO

    获取图片的大小(宽高) from io import BytesIO,StringIO import requests from PIL import Image img_url = "ht ...

  3. js获取图片原始大小

    摘要: 浏览器中显示的图片大小未必是他真实的高和宽,比如像下面这样,我们给他加上宽和高的样式 <img src="IE.png" style="width:25px ...

  4. Android获取图片实际大小兼容平板电脑

    项目中有个图片在平板电脑中显示特别小的原因.一直苦于没找到原因,也没有平板电脑測试,今天找了个改动分辨率的,编写相关方法最终处理了,记录下比較: 好让以后不造轮子. 主要是获取文章相关图片显示问题.直 ...

  5. Java不需要加载整张图片而获取图片的大小

    转载地址 http://blog.jdk5.com/zh/java-get-image-size-without-loading-the-whole-data/ 利用Java类,获取图片的类型,宽度和 ...

  6. Java 获取图片的大小、宽、高

    参考:https://www.cnblogs.com/hongten/archive/2012/11/26/hongten_java_ImageReader_BufferedImage.html im ...

  7. html5plus 从相册选择图片后获取图片的大小

    plus.gallery.pick(function (filePath) { plus.io.resolveLocalFileSystemURL(filePath, function (entry) ...

  8. 通过url动态获取图片大小方法总结

    很多时候再项目中,我们往往需要先获取图片的大小再加载图片,但是某些特定场景,如用过cocos2d-js的人都知道,在它那里只能按比例缩放大小,是无法设置指定大小的图片的,这就是cocos2d-js 的 ...

  9. JS获取图片实际宽高及根据图片大小进行自适应

    JS获取图片实际宽高,以及根据图片大小进行自适应  <img src="http://xxx.jpg" id="imgs" onload="ad ...

随机推荐

  1. Oracle错误——ORA-03113:在通信信道文件的末尾 解决方案

    起源 今天跟往常一样,登陆PL/SQL,确登陆失败,出现一个错误"ORA-01034"和"ORA-27101"如图: 然后就就通过命令提示符去登陆Oracle, ...

  2. atitit.报告最佳实践oae 和报告引擎的选择

    atitit.报告最佳实践oae 与报表引擎选型 1. 报表的基本的功能and结构 2 1.1. 查询设计器(配置化,metadata in html) ,anno 2 1.2. 查询引擎 2 1.3 ...

  3. HTTP2.0协议

    HTTP2.0协议 http2协议的草案已经出来了,阅读了一下网上的中文版,http2尽可能的兼容http1.1.改进了http1.1协议的不足. http1.0和http1.1的缺点: 1.http ...

  4. Enhancing the Application: Advanced JDBC Features(转)

    Enhancing the Application: Advanced JDBC Features This chapter describes additional functionality th ...

  5. 深入理解计算机系统之旅(四)处理器(CPU)的体系结构

    1.前言 处理器是很复杂的系统,它不是一蹴而就的,它是经过不断的升级.更新.设计之后的产物,而且如今还在保持着不断的更新. 处理器仅仅能运行一系列的指令,每条指令都仅仅是运行某个简单的操作,比方数字相 ...

  6. ubuntu 14.04设备OVS虚拟OpenFlow交换机配置汇总

    一.设备OVS sudo apt-get install openvswitch-controller openvswitch-switch openvswitch-datapath-source ( ...

  7. git commit -s -m 注释中的换行 [加入signed-off-by

    windows环境下的Git Bash中注释的换行: 使用单引号. 或者是在Linux系统里面用终端 git add . git commit -m ' . this is the test . up ...

  8. web.xmlf多ilter在执行顺序

    1.随着url-pattern路配置filter请务必先实施servlet-name路配置filter    2.随着url-partern路配置filter于.,按web.xml于filter-ma ...

  9. 在JBuilder8在使用ANT

    在JBuilder8中使用ANT                                                            作者:翁驰原    在JBuilder8中.Ap ...

  10. TI C66x DSP 系统events及其应用 - 5.8(ISTP)

    中断服务表指针ISTP(Interrupt Service Table Pointer)位置寄存器用于定位的中断服务例程,那ISTP去哪里找要运行的程序,ISTP(当中的ISTB字段)就是指向IST表 ...