ruby-on-rails - Assets 、rmagick 和 rails

标签 ruby-on-rails rmagick

我正在开发一款可以从用户那里生成数字卡的应用程序。目前我正在处理 .rb 文件中的 rmagick 代码。然后只需从命令行运行它,直到我弄清楚。我遇到了一些问题。

  1. 源图像我不知道它的路径。让它工作的唯一方法是将它与 cards.rb 文件一起放在 Controller 目录中。我想把它放在 assets/cards/
  2. 正在保存文件,问题同上。我想保存在assets/cards/@card_id.png
  3. 我尝试在 assets/fonts/目录中使用自定义字体 我尝试过 self.font = “#{RAILS_ROOT}/assets/fonts/dreamorphansbd.ttf” 但代码无法运行。如果我删除引号,它会运行,但字体不正确。
  4. 我还没有尝试的最后一件事是将标题添加为来自数据库的 card.event。我认为它会沿着这些路线发展,但不确定。

需要'RMagick'

include Magick

blank = Magick::Image.read("Blank-Card.png").first

text = Image.read("caption:Some big long text would go here.") do
  self.gravity = CenterGravity
  self.font = #{RAILS_ROOT}/app/assets/fonts/dreamorphansbd.ttf
  self.background_color= "Transparent"
  self.size = "638x"
  self.pointsize = 40
end

blank.composite!(text[0], CenterGravity, Magick::OverCompositeOp)

blank.write("card.png")

最佳答案

  1. 尝试:Magick::Image.read(Rails.root.join('image', 'Blank-Card.png')).first
  2. 尝试:blank.write(Rails.root.join('image', 'card.png'))
  3. 使用:Magick.fonts,你会看到所有可用的字体
  4. 尝试:Image.read("caption:#{obj_active_record.your_attribute}")

关于ruby-on-rails - Assets 、rmagick 和 rails,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24967103/

相关文章:

ruby-on-rails-3.1 - 在服务器重新启动之前,Rails 3.1 Assets 无法识别 rmagick 上传的新图像

ruby Rmagick : Crop/"Trim" excessive (white) space of image automatically

ruby-on-rails - Heroku worker dyno 给出 R14 错误 - 内存管理问题 - rmagick 内存限制选项

ruby-on-rails - 如何正确使用对同一模型有多个关联的工厂?

sql - 棘手的 Ruby/Rails 循环和查询逻辑。需要建议。 SQL加入或组?

ruby-on-rails - bundle 安装安装 ffi 失败(由于 env 命令错误?)

imagemagick - 如何找到ImageMagick配置文件的路径

sql - 如何在 SQL 查询中获取 Paperclip 照片 url - Rails 3.1,Paperclip

Javascript 函数在 Firefox 中运行多次,但在 Chrome 中运行一次,为什么?

ruby-on-rails - ubuntu 16.04 上的 rmagick 安装问题