racket: manipulating jpeg files

时间:2018-02-05 12:54:49

标签: racket jpeg libjpeg libjpeg-turbo

I'm trying to manipulate jpeg files in racket lang. I failed to find any racket library with good cross-platform support (linux, mac osx, win10). Does exist any?

Actions I want to perform are read exif, scale images and store it to database.

1 个答案:

答案 0 :(得分:2)

您可以使用several external libraries进行图像(和视频)操作。然而,Racket实际上捆绑了大量的图像处理工具(适用于jpg,png,位图等)。最值得注意的是pict库和racket/draw库。我强烈建议您将它们用于大多数标准图像处理任务(例如缩放,转换等)。您甚至可以使用sql库(也随Racket一起将文件存储到数据库中。

如果要使用racket/draw类,可以创建一个bitmap%对象,该对象允许您保存到文件并从中加载。您还可以使用bitmap-dc%进行基本绘图操作。

pict库是一个很好的图像处理功能API。您可以使用bitmap函数从文件中获取位图,以及将bitmap%对象转换为pict对象。 pict->bitmap功能可让您走另一条路,将pict对象转换为bitmap

Racket Draw/Pict Example