首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我的.jpg文件比.png大吗?

我的.jpg文件比.png大吗?
EN

Stack Overflow用户
提问于 2017-05-14 17:59:24
回答 3查看 5.9K关注 0票数 7

我使用微软油漆创建了一个15248 x 6552实色图片。我将其保存为.png和.jpg,并期望.jpg比.png小,但事实并非如此。.jpg文件为1.49MB,而.png为391 is。难道jpeg不应该是一种有损压缩,在技术上更小吗?

我在某个地方读到.png对纯色等更好,所以我从网上下载了一张图片(不是纯色),并用油漆保存了这两种格式。这一次,jpeg比png小。这仅仅是由于颜色的梯度吗?如果是,那为什么?

即使图片是纯色,jpg编码也能压缩得更好吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2017-05-16 15:52:51

在这个场景中,PNG的性能应该比JPEG更好。

正如在另一个答案中所指出的,PNG做了一行像素预测,然后是ZLIB压缩.如果图像只有一种颜色,则预测将为所有像素生成一个恒定的零值,但每行的开头部分除外。因此压缩将是非常有效的。我敢打赌,如果图像是“景观”(6552x15248而不是15248 x6552),压缩效果会更好一些。

相反,JPEG压缩将图像分成8x8像素的块,并试图对每一个图像进行精细的低频分量和粗化高频分量的量化。这对于“自然”(摄影或渲染)图像很好,但是对于很少颜色(或单一颜色)的图像就不是那么好了。

这里的一些比较

票数 10
EN

Stack Overflow用户

发布于 2017-05-15 08:10:02

不一定。

PNG是一种基于预测的算法,这意味着它试图根据先前编码的像素来扣除一个像素的值。我敢打赌,对于一幅坚实的图像,这个预测是非常准确的,这样就得到了很好的结果。

JPEG接受不同的“质量级别”,这决定了压缩文件的大小。您的实验和网络版本之间的大小差异很可能是由于这个原因(当然,除非您正在下载另一张图片!)

注意,JPEG可能会引入一些图像伪影,因为它是一种有损算法,而PNG将为您恢复精确的输入图像。

票数 2
EN

Stack Overflow用户

发布于 2021-02-10 01:48:06

对于同一张图片,如果您保存为PNG第一,则PNG将更小,如果保存为JPG第1,则会比随后保存的PNG更小

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/43970574

复制
相关文章
5V输入升压双节锂电管理芯片_锂电池升压电路
新推出的一款高效率、直流升压稳压电路GS3662D。输入电压范围可由最低3.7伏特到最高42伏特,输出电压3.7–42V可调整且内部MOS输出开关电流可高达2A,非常适合于数码便携产品电池供电,3G网络产品,数码相机,LCD液晶屏背光电路,太阳能照明路灯,网络通讯等产品的电压转换。
全栈程序员站长
2022/11/08
7170
JS输入验证
验证职能输入手机号 先替换非数字 <input type="text" name="userPhone" placeholder="请输入手机号" class="" onkeyup="value=
码客说
2019/10/22
7.3K0
Js输入验证
1.文本框只能输入数字代码(小数点也不能输入) <input onkeyup="this.value=this.value.replace(/\D/g,'')" onafterpaste="this.value=this.value.replace(/\D/g,'')"> 2.只能输入数字,能输小数点. <input onkeyup="if(isNaN(value))execCommand('undo')" onafterpaste="if(isNaN(value))execCommand('undo')"
用户7657330
2020/08/14
9.2K0
angularjs输入验证[通俗易懂]
原文 http://www.cnblogs.com/woshinidezhu/p/Form-validation-with-AngularJS.html
全栈程序员站长
2022/09/15
1.3K0
AngularJS 输入验证
我们使用了 ng-show指令, color:red 在邮件的 $dirty 或 $invalid 都为 true 时才显示。
陈不成i
2021/07/23
1.3K0
input各种输入验证
限制输入框只能输入数字,并且保留两位小数 <input type="text" onkeyup="var p2 = parseFloat(value).toFixed(2);value = p2>=0
用户3055976
2018/09/12
1.1K0
HTML5-输入验证
HTML5引入了对输入验证的支持。设计者可告知浏览器自己需要什么类型的数据,然后浏览器在提交表单之前会使用这些信息检查用户输入的数据是否有效。其好处是:用户可以立刻得到问题反馈。
奋飛
2019/08/15
2.1K0
27_输入验证:IValidatableObject
http://mpvideo.qpic.cn/0bf26iasyaabvaapezolqbpvd4wdftzaclaa.f10002.mp4?dis_k=933d2c80d1d5643805ea3f4
宿春磊Charles
2022/03/29
7270
HTML5-输入验证
HTML5引入了对输入验证的支持。设计者可告知浏览器自己需要什么类型的数据,然后浏览器在提交表单之前会使用这些信息检查用户输入的数据是否有效。其好处是:用户可以立刻得到问题反馈。
奋飛
2021/08/30
1.5K0
HTML5-输入验证
Flex笔记_验证用户输入
内置验证器 Flex提供了很多内置的验证器,它们都是Validator类的子类。 Flex以扩展Validator类的方式创建了内置验证器,以用于满足常用需求。 Validator组件的重要属性和函数: enabled:Boolean类型,决定是否启用验证功能 required:Boolean类型,是否必填 requiredFieldError:String类型,设置显示给用户的消息 source:Object,设置想要验证的对象(组件) property:String,
LeoXu
2018/08/15
2.9K0
OC 密码验证(正则+连续输入+输入过于简单判断)
昨天项目上线了,上线之前老板提出一个要求,登陆密码不能设置过于简单的,不能输入连续的字符,没办法,加班改吧 思路: 1、正则: 正则表达式不用说,百度一搜一大堆,别告诉我不会搜,这我可帮不了你,好吧还是帮帮你吧度娘的百度一下你就知道(只能帮到这里了,别的真帮不到你了) 2、连续输入: 我们怎么判断连续输入呢,连续输入也就是如下样式 111111 qqqqqq ZZZZZZ 判断这个连续输入有两种办法,一在文本输入框的代理方法中TextFieldDelegate 也就是下面那哥们 - (BOOL)textF
GuangdongQi
2018/05/24
2.7K0
QLineEdit 输入验证(相关的设置)
LineEdit提 供一个文字输入栏位,可以输入文字或数字,我们可以对输入作验证,或是设定为一般显示、密码显示等等,以下的程式是个简单的设定示范:
bear_fish
2018/09/20
2.9K0
3.7v锂电池升压电路_电池升压
FS2114的PCB布局设计建议-基础篇 开关电源的一个常见问题是“不稳定”的开关波形。有时,波形抖动很明显,可以听到从磁性元件发出噪 声。如果问题与印刷电路板(PCB)布局有关,则很难确定原因。 EMC也是很注重(PCB)布局,这就是为 什么在开关电源设计的早期正确布局PCB至关重要的原因。其重要性不可夸大。 原理图走线 主要器件放置 并联一个旁路电容0.1uF LX节点 FB反馈电阻R1,R2 COUT电容 容易影响输出的布线 功率组件的推荐焊盘图案 GND功率地的PCB布线 电感器选择
全栈程序员站长
2022/11/08
6890
3.7v锂电池升压电路_电池升压
表格中的输入框验证
一、首先在表格的外面套一层form,并设置form的model属性 二、在列的模板中增加el-form-item并设置动态的属性和验证规则 <template> <div> <el-form ref="form" :model="tableForm" :rules="tableForm.rules"> <el-table :data="tableForm.tableData"> <el-table-column prop="name" label="名称"></el
tianyawhl
2020/10/14
2K0
Flask-3 表单和输入验证
flask-wtf是一个表单集成插件,包括CSRF,文件上传和Recaptcha集成等。
XXXX-user
2019/07/23
1.7K0
Flask-3 表单和输入验证
26_输入验证和Data Annotations
http://mpvideo.qpic.cn/0bf2cmasyaabbmapfkolqfpvce6dfqjqclaa.f10002.mp4?dis_k=3ff615f89f71c0cf4a74163
宿春磊Charles
2022/03/29
4910
表格中的输入框验证
一、首先在表格的外面套一层form,并设置form的model属性 二、在列的模板中增加el-form-item并设置动态的属性和验证规则 <template> <div> <el-form ref="form" :model="tableForm" :rules="tableForm.rules"> <el-table :data="tableForm.tableData"> <el-table-column prop="name" label="名称"></el-
IT茂茂
2020/09/21
1.8K0
element-ui input输入验证 rules
1、简单的校验,之间通过rules 校验 :rules="{required: true, message: '执行时间不能为空', trigger: 'blur'}" 这个是失去焦点的时候,校验是否有值,如果没有会之间有校验提示 2、通过定义方法校验
小蔚
2021/11/24
1.4K0
element-ui input输入验证 rules
UItexfile实时验证输入字符「建议收藏」
– (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string;
全栈程序员站长
2022/07/08
3660
点击加载更多

相似问题

升压精神气解析器不消耗整个字符串表达式?

12

升压精神解析器属性类型无效。

11

使用boost精神气解析器迭代填充BGL图

14

用升压气解析器解析枚举

20

解析器组合器验证多个输入

10
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文