ruby-on-rails - 在 ActiveStorage 中使用变体选项后如何保存图像副本。
问题描述
我在需要处理图像的 ActiveStorage 中遇到这个问题,我的要求是保存处理后的图像并在裁剪和其他转换后将其附加到新模型。
解决方案
ActiveStorage::Blob#variant
适应不同的用例,所以ActiveStorage::Variation
直接处理。以下假设是最新的 Rails master 而不是 Rails 5.2:
variation = ActiveStorage::Variation.new(resize_to_fit: [100, 100], crop: true)
message.header_image.open do |input|
variation.transform(input, format: "png") do |output|
message.cropped_header_image.attach \
io: output,
filename: "#{message.header_image.filename.base}.png",
content_type: "image/png"
end
end
推荐阅读
- c - if 条件中的链式赋值
- python - How to filtering in Django use specific user
- python - 在python中将文件作为输入
- java - java.lang.OutOfMemoryError: Java heap space AND org.apache.spark.shuffle.MetadataFetchFailedException: Missing an output location for shuffle 4
- android - 自定义字体键盘应用程序如何更改输出文本的样式?
- angular - mat-list-item 不计算子组件中的“mat-line”类
- fetch - 我的 API 向服务器发出多个请求
- mysql - 将spring boot应用程序部署到gcp应用引擎时如何在云sql中自动创建数据库表
- c# - 创建带有参数的重复窗口 C# WinForms
- mariadb - 制作临时 MariaDB 用户密码