用于裁剪图像的Clojure GUI

时间:2013-10-20 22:27:12

标签: image-processing clojure crop seesaw quil

我正在制作一个用于选择要从图像裁剪的区域的GUI。我一直在使用Seesaw和cans选择矩形区域,但找不到将图像设置为seesaw.canvas背景的方法。 This建议在标签上使用图标。我可以制作一个可绘画的标签,然后将其用作画布吗?有没有办法重叠标签和画布或以某种方式使用一个面板,为其内容提供背景?

我认为Quil有这个功能,但是如果我想要添加小部件,我不知道如何围绕它的绘制,设置,草图形式构建GUI。

现有的解决方案也会受到赞赏,只要我可以分解它们。使用GIMP或Photoshop不是我想要的工作流程的选项:每张照片有多个作物,每页上有不同种类,并且根据所概述的图像类型添加了不同的元数据。有关图书馆处理照片元数据的建议吗?我计划在exiftool上使用shell接口,但更便携的选项可能更好。

1 个答案:

答案 0 :(得分:2)

您可以使用java.awt.Imageseesaw.graphics/image-shape(或子类)绘制到画布:

(require '[seesaw.graphics :as g])

(defn paint-canvas [c g2d]
  (g/draw g2d (g/image-shape my-image 0 0) (g/style)))

似乎应该这样做。

另请注意,标签(以及所有Seesaw小部件)都是可绘制的。只需在画布上设置:paint选项即可。