2013-10-20 5 views
2

이미지에서자를 영역을 선택하기위한 GUI를 만들고 있습니다. 시소 (Seesaw)를 사용하고 사각형 영역을 선택할 수 있지만 이미지를 seesaw.canvas의 배경으로 설정하는 방법을 찾을 수 없습니다. This은 라벨의 아이콘을 사용하도록 제안합니다. 페인트 칠할 수있는 라벨을 만든 다음 캔버스로 사용할 수 있습니까? 라벨과 캔버스를 겹칠 수있는 방법이 있습니까? 아니면 내용에 배경을 제공하는 패널을 사용하는 것입니까?Clojure 이미지 자르기 GUI

Quil이이 기능을 가지고 있다고 생각하지만, 위젯을 추가하려면 모양을 스케치하고 그 그림을 그리는 GUI를 만드는 방법을 모르겠습니다.

내가 분해 할 수있는 한 기존 솔루션도 좋을 것입니다. GIMP 또는 Photoshop을 사용하면 원하는 작업 흐름에 대한 옵션이 아닙니다. 사진마다 여러 가지 작물, 각 페이지마다 다른 종류의 이미지, 윤곽선이있는 이미지의 유형에 따라 다른 메타 데이터가 추가됩니다. 사진 메타 데이터 작업을위한 라이브러리에 대한 제안 사항은 무엇입니까? exiftool에 쉘 인터페이스를 사용할 계획 이었지만, 더 포터블 옵션이 더 좋을 수도 있습니다.

+0

['drawImage()'] (http://docs.oracle.com/javase/7/docs/api/java/awt/Graphics2D.html) 방법은 사용자의 요구에 적합하지 않습니까? 캔버스 일 수있는 그래픽 객체에 이미지를 렌더링해야합니다. ' –

+0

나는 그것을 줄 것이다. 고맙습니다. – fitzsnaggle

답변

2

당신은 seesaw.graphics/image-shape으로 캔버스에 java.awt.Image (또는 하위 클래스)를 그릴 수 있습니다 : 그 그것을해야처럼

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

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

보인다.

라벨 (및 모든 Seesaw 위젯)은 칠할 수 있습니다. 캔버스에있는 것처럼 :paint 옵션을 설정하고 페인트 만하면됩니다.

+0

답변 해 주셔서 감사합니다. 내가 결국 seesaw.graphics를 보일 때까지 이미지를 만드는 것은 약간 까다 롭습니다. – fitzsnaggle