ClojureからJava 2Dを利用するようにしたいが良く分からなかった。 探してみるとCX's Hello, World!のHello, Java 2D(Clojure) World!に 例が掲載されていた。 ただ、そのままではOpenJDK 17.0.4で動かしたClojure 1.11.1では動かなかった。 その部分を動くようにして、フォントの設定をしたかったのでそれを追加してみた。
; From http://cx20.main.jp/blog/hello/2012/12/05/hello-java2d-clojure-world/ ; Modified for Clojure 1.11.1 by Ryo ONODERA <ryo@tetera.org> ; Run: clj -M java2d.clj (import (javax.swing JFrame) (javax.swing JPanel) (java.awt Graphics) (java.awt Graphics2D) (java.awt Font) ) (defn create-panel [] (proxy [JPanel] [] (paintComponent [g] (.setFont ^Graphics2D g (Font. "Droid Sans" Font/PLAIN 72)) (.drawString ^Graphics2D g "Hello, Java 2D World!" 0 100) ))) (def panel (create-panel)) (def frame (JFrame.)) (doto frame (.setDefaultCloseOperation javax.swing.WindowConstants/EXIT_ON_CLOSE) (.add panel) (.setSize 640 480) (.setTitle "Hello, World") (.setLocation 100 100) (.setVisible true))
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。