【问题标题】:Rmagick resize and flatten_image errorRmagick调整大小和flatten_image错误
【发布时间】:2011-09-24 05:16:17
【问题描述】:

我正在尝试使用 Rmagick 组合两个图像。

  1. 顶部的图像可以使用 Jquery-UI 调整大小和拖动。使用 Jquery 代码调整大小后,我得到图像的大小,如下所示:

      ui.size["height"] and ui.size["width"]
    
  2. 我使用 Ajax 将此数据发送到 Rails 服务器。

  3. 下一步我使用 Rmagick resize_to_fit 调整图像大小,然后使用 flatten_image 将两个图像组合如下:

    images=ImageList.new(img1, img2)
    images[1]=images[1].resize_to_fit!(height, width)
    images[1].page=Rectangle.new(height, width, x_coord+offset, y_coord-offset1)
    com_img=images.flatten_images
    com_img.write(tmpfile.path)
    

我的问题是调整大小的图像似乎无法正常工作。我总是得到比我想要的更小的图像(对于通过调整图像大小测试的不同高度和宽度)。图像的左上角放置正确(意味着页面命令正常工作)。我检查了我的 Jquery UI 代码和 ajax 以及它发送正确的大小信息。不知何故,Rmagick resize 或 flatten_image 未正确处理信息。

有人能指点这里有什么问题吗?

谢谢!

PS:偏移量说明了第一张图片相对于页面左上角的位置。

【问题讨论】:

    标签: ruby-on-rails ruby jquery-ui rmagick


    【解决方案1】:

    我找到了 Rmagick 在调整图像大小以使其适合正方形时要求图像的问题的解决方案。所以resize_to_fit 函数在两个维度相同并且是height 或width 中较大的一个时可以正常工作。

    所以我更改了代码以执行以下操作

            if height > width
            images[1]=images[1].resize_to_fit!(height, height)
            else
            images[1]=images[1].resize_to_fit!(width, width)
            end 
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-06
      • 1970-01-01
      • 2014-11-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多