我需要编写一些 ruby 脚本来帮助我处理大图像文件。我知道 imagemagick 和 rmagick 库(ruby)的基础知识,但直到现在我都在做一般简单的事情(缩略图,添加水印等)现在我想将示例分辨率为 3000/1000px 的文件剪切成十个较小的图像(3000/100 px ).是否可以?我不知道该使用哪种方法。
最佳答案
如何为每个输出图像裁剪
一次输入图像:
output_images =
(0...10).collect { |i|
input_image.crop(0, i*100, 3000, 100, true)
}
更一般地(但仍然假设 Y 分辨率可以被切片数整除):
def slice_image_horizontally(image, num_slices)
slice_height = image.y_resolution / num_slices
(0...num_slices).collect { |i|
image.crop(
0, i * slice_height,
image.x_resolution, slice_height,
true # reset image offset
)
}
end
关于ruby - 将一张图片切割成更小的部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7917552/