>  기사  >  백엔드 개발  >  PHP 处理图片

PHP 处理图片

WBOY
WBOY원래의
2016-06-23 14:05:23909검색


有个上传图片的功能
如何每次把上传的图片大小控制在200K以下?
只能更改图片的尺寸吗?
其实图片的像素和尺寸和清晰度等都有什么联系。。


回复讨论(解决方案)

php.ini里有upload_max_filesize = 128M  可以设置大小吧!而且在html页面也可以设置中的value来限制大小 

无压缩图片大概一个像素3字节(RGB),jpg约为1/6大小,当然可以更小,但失真更大就是了
可以重采样使用更大压缩比减少字节数,但一般服务器不做这事,因为大量操作很吃资源的

php.ini里有upload_max_filesize = 128M  可以设置大小吧!而且在html页面也可以设置中的value来限制大小
不是不让上传,而是把上传的图片改小

gd库生成缩略图就是了

gd库生成缩略图就是了
是不是只能指定尺寸,但不能保证一定在200K以下?

可以的。尺寸会影响大小。

控制一下压缩比例,因为有的图片像素太大的话,比例缩略到指定比例也不一定会小于200k,所以要控制你最大上传图片的大小缩略到200k的最佳比例...

从目前流行的图片采集设备上看,200K 只不过是一张普通邮票
清晰度是指表示已知大小的目标所耗费的像素素,当然是越多越清晰

比如,头发的直径约在70~100μm之间
你用一个像素表示,那么只是一条细线
你用100个像素表示的话,你将能看到发身上的鳞片

比如,头发的直径约在70~100μm之间
你用一个像素表示,那么只是一条细线
你用100个像素表示的话,你将能看到发身上的鳞片

平时用相机照出来的图片,在电脑里用查看图片的软件打开看到应该不是图片的实际尺寸?
如果用 100个像素表示头发,那图片本身尺寸是不是很大?
其实我想问的就是像素和图片尺寸的联系。

如果用 100个像素表示头发,那图片本身尺寸是不是很大?
那也不一定,如果那个图片中就只有一根头发,那不也就只有100个像素吗?

建议你先复习一下  分辨率 的知识

像素和 图片尺寸的关系是单元和总体的关系
像素和 图片文件尺寸(字节数)的关系我在#2说了
一幅1024x500像素的无损全彩(24bit)图片就是1500k再加文件头,jpg(非jpg2000)就大概是无损的1/6约250k
说“大概”,“约”是因为jpg有多级压缩率,每像素的颜色值也有影响,故字节数不定
同样像素的“万花筒”和纯色图片,均使用24bit采样,两者无损图片格式的字节数一样,但jpg格式后者字节数就小很多

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.