gpt4 book ai didi

ruby-on-rails - 使用 Rails Assets 管道时包括图像宽度和高度

转载 作者:行者123 更新时间:2023-12-02 15:35:26 25 4
gpt4 key购买 nike

当使用 Rails Assets 管道时,例如 image_tag "logo.png" 导致以下 HTML:

<img src="/assets/logo-0c1cd0fb.png">

rails 是否有可能自动检测图像尺寸(宽度和高度),以便生成包含尺寸的 HTML 以加快页面呈现速度,如下所示:

<img src="/assets/logo-0c1cd0fb.png" width="230" height="32">

最佳答案

感谢 Thomas,我想到了这个(需要 gem "fastimage" 在你的 Gemfile 中)

def image_tag(source, options = {})
if !options[:size] # Do not overwrite size if already set by caller
@@image_size ||= {} # Cache for image sizes
if !@@image_size[source] # Fill cache
@@image_size[source] = FastImage.size(::Rails.root.to_s+"/app/assets/images/#{source}", :raise_on_failure => true).join("x")
end
options = options.merge(:size => @@image_size[source])
end
super(source, options)
end

只需添加到您的 ApplicationHelper

关于ruby-on-rails - 使用 Rails Assets 管道时包括图像宽度和高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18513925/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com