【问题标题】:Image weight higher after upload with paperclip使用回形针上传后图像权重更高
【发布时间】:2018-09-26 15:30:41
【问题描述】:

我对回形针有疑问。当我上传 507ko 的 .png 图像时,结果是... 2.1Mb 的图像,几乎大了 4 倍。

我只对纵向格式的 PNG 有这个问题。 JPG 也会变得更重,但只有几个字节。

此外,问题仅出现在我的“额外”格式中。

这是我的代码:

  has_attached_file :image,
                styles: { extra: "1280x3000>", large: "640x480>", medium: "200x120#"}

如果你想试试图片:https://www.groupe-pratique.com/wp-content/uploads/2018/04/Les-chiffres-du-marketing-automation-infographie-1.png

你有没有遇到过这个问题?

编辑:

事实上,问题不仅出现在额外尺寸上,而且在其他尺寸上,差异太小而无法看到。问题是......大尺寸有问题。

EDIT2:

我通过将 PNG 文件转换为 JPG 解决了这个问题。在我的情况下这不是问题,但如果你真的需要 PNG 文件,我没有找到解决方案。 :/

【问题讨论】:

  • 上传之前图片的尺寸是多少?我的意思是高 x 宽?
  • 嗨@Nezir,尺寸是2000x7096px
  • 问题是尺寸变化还是文件大小变化?
  • 尺寸随心所欲地变化,但即使尺寸更小,文件大小也会大大增加

标签: ruby-on-rails ruby paperclip


【解决方案1】:

您可以尝试在示例 belove 等模型回形针选项中设置 convert_options 吗?喜欢-quality 80?或多情人。请尝试使用此选项进行操作,然后上传测试文件大小。

has_attached_file :avatar, 
                  :styles          => { :thumb => '50x50#' },
                  :convert_options => { :thumb => '-quality 80' }

因为回形针在背景 ImageMagick 中使用,并且它具有一些用于在上传过程中处理图像的默认设置: “如果可以确定,默认使用输入图像的估计质量,否则为 92。当质量大于 90 时,色度通道不会下采样。使用 -sampling-factor 选项指定因子色度下采样。”

我建议你试试这个 convert_options 并检查结果。

【讨论】:

  • 谢谢你的回答,但是我越是降低质量,越是增加重量,真的很奇怪
猜你喜欢
  • 1970-01-01
  • 2011-05-06
  • 2014-08-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-03
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多