<?

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. python关于for循环的几个函数

    1.enumerate:返回2个值,1是当前的for循环的第几轮,2是循环得到的数值 enumerate works by supplying a corresponding index to eac ...

  2. Android分屏显示LogCat

    Eclipse里有非常多界面组件,文件列表.编辑区.类结构等等,在这么多界面组件里,再打开一个Logcat就基本没有什么空间了.与其挤在一起还不如分开成两个窗体. 或者你有两个屏幕,想一个屏幕编辑,一 ...

  3. C++ Primer 学习笔记_57_类和数据抽象 --管理指针成员

    复印控制 --管理指针成员 引言: 包括指针的类须要特别注意复制控制.原因是复制指针时.一个带指针成员的指针类 class HasPtr { public: HasPtr(int *p,int i): ...

  4. 2014华为机试西安地区B组试题

    2014华为机试西安地区B组试题 题目一.亮着点灯的盏数 一条长廊里依次装有n(1≤n≤65535)盏电灯,从头到尾编号1.2.3.-n-1.n.每盏电灯由一个拉线开关控制.開始,电灯所有关着. 有n ...

  5. POJ1300(欧拉回路)

    Door Man Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 2139   Accepted: 858 Descripti ...

  6. 解决Ubuntu和Windows该文件乱码问题

    1.转换文件内容编码    Windows在自然纯文本文件.当中国作为编码GBK,在Ubuntu下乱码,可以使用iconv命令转换:    iconv -f gbk -t utf8 source_fi ...

  7. c++堆栈实现

    A Stack is a data-structure that You can only add an element to the top of the Stack, andYou can onl ...

  8. Springmvc +JNDI 在Tomcat下 配置数据源(转)

    一.             简介 jndi(Java Naming and Directory Interface,Java命名和目录接口)是一组在Java应用中访问命名和目录服务的API.命名服务 ...

  9. win8.1 64位环境建设android开发环境

    1.下载JDK,http://www.oracle.com/technetwork/java/javase/downloads/index.html,选择版本号 2.安装刚刚下载的JDK 3.环境变量 ...

  10. Android - 设置ImageView为全屏显示

    设置ImageView为全屏显示 本文地址: http://blog.csdn.net/caroline_wendy ImageView默认会适应屏幕大小, 假设想使用全屏填充, 则须要使用: and ...