Scala图像调整大小并裁剪

时间:2013-11-16 07:50:10

标签: java scala image-processing playframework-2.2

我有一个Play framework 2.2应用程序,我想调整大小和裁剪图像(如个人资料图片)。有一个很好的Scala库可以用来做这个吗?如果不是我应该使用哪个Java库(考虑性能,质量......)。一个例子将不胜感激。

3 个答案:

答案 0 :(得分:4)

https://github.com/sksamuel/scrimage是一个Scala图像库,它使用了一些众所周知的Java库。

答案 1 :(得分:3)

之前我在Java中使用了Thumbnaiator https://code.google.com/p/thumbnailator/。工作得很好,是纯Java,所以不需要任何本机依赖。

答案 2 :(得分:0)

如果您只需要调整图像大小,则不需要任何附加库/依赖项。只需使用Java BufferedImage类即可。

// Target size
val width = 100
val height = 100

// Load image from disk
val originalImage: BufferedImage = ImageIO.read(new File("test-data/test.jpg"))

// Resize
val resized = originalImage.getScaledInstance(width, height, Image.SCALE_DEFAULT)

// Saving Image back to disck
val bufferedImage = new BufferedImage(width, height, BufferedImage.TYPE_INT_RGB)
bufferedImage.getGraphics.drawImage(resized, 0, 0, null)
ImageIO.write(bufferedImage, "JPEG", new File("test-data/resized.jpg"))

您需要这些导入:

import java.awt.image.BufferedImage
import java.io.File
import javax.imageio.ImageIO