Rmagick调整大小和展平图像错误
我正在尝试使用 Rmagick 组合两个图像。
可以使用 Jquery-UI 调整顶部图像的大小并拖动。我使用 Jquery 代码调整大小后获得图像的大小,如下所示:
ui.size["height"] 和 ui.size["width"]
我使用 Ajax 将此数据发送到 Rails 服务器。
下一步我使用 Rmagick resize_to_fit 调整图像大小,然后使用 flatten_image 组合两个图像,如下所示:
images=ImageList.new(img1, img2) images[1]=images[1].resize_to_fit!(高度,宽度) images[1].page=Rectangle.new(高度, 宽度, x_coord+偏移量, y_coord-offset1) com_img=images.flatten_images com_img.write(tmpfile.path)
我的问题是调整图像大小似乎无法正常工作。我总是得到比我想要的更小的图像(通过调整图像大小测试不同的高度和宽度)。图像的左上角位置正确(意味着页面命令正常工作)。我检查了我的 Jquery UI 代码和 ajax 及其发送的正确大小信息。不知何故,Rmagick resize 或 flatten_image 未正确处理信息。
有人可以指出这里可能出了什么问题吗?
谢谢!
PS:偏移量考虑了第一张图像相对于页面左上角的位置。
I am trying to use Rmagick to combine two images.
The image on top can be resized and dragged using Jquery-UI. I get size of the image after resize using Jquery code such as follows:
ui.size["height"] and ui.size["width"]
I send this data using Ajax to Rails server.
The next step I resize the image using Rmagick resize_to_fit and then use flatten_image to combine the two images as follows:
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)
My problem is that the resize image does not seem to work correctly. I am always getting an image smaller than what I want (for different heights and widths tested by resizing image). The image's left top corner is correctly placed (meaning page command is working correctly). I checked my Jquery UI code and ajax and its sending the correct size information. Somehow the information is not being processed correctly by Rmagick resize or flatten_image.
Can someone provide pointers what could be wrong here?
Thanks!
PS: Offsets account for the first image's position with respect to page top-left corner.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
我找到了 Rmagick 需要图像调整大小以适合正方形的问题的解决方案。因此,当两个尺寸相同并且是高度或宽度中较大的一个时, resize_to_fit 函数可以正常工作。
所以我更改了代码以执行以下操作
I found the solution to the problem Rmagick requires the images when they are resized that they should fit into a square. So the resize_to_fit function works correctly when both dimensions are the same and are the larger one among height or width.
So I changed the code to do the following