2012-01-01 5 views
1

Wingdings、Webdings(dingbats:http://en.wikipedia.org/wiki/Dingbat)などのエキゾチックなフォントに含まれるシンボルをJavaアプレットに描画したいと思います。 Graphics.drawString()を使用すると、描画された文字列の各文字に対して一般的な「四角形の記号」が表示されます。私はグーグルで何の答えも見つけられず、何か共通していないと思います。Javaアプレットでエキゾチックなフォントを描く

私は過去にC#WPFでそれをやっていましたが、SVGとHTMLでそれをやっていませんでした。 Javaで可能ですか?

EDIT:解決済み。微妙なことがありました。このようなフォントで使用したいシンボルは文字'a'にリンクされていますが、"\uF061"を実際には"a"ではなくg.drawString()に渡す必要があります。それ以外の場合は、四角い記号で終わります。

答えて

3

解決済み。このようなフォントで必要なシンボルは文字 'a'にリンクされていますが、実際には "a"ではなく "\ uF061"をg.drawString()に渡す必要があります。それ以外の場合は、四角い記号で終わります。

1

Fontを、アプレットの実行時クラスパス上にあるJarファイル(配布権があることを前提とします)に追加します。 I. Jarへの参照をapplet要素のarchive属性に追加します。 (のようなもの)を介してアクセスして:

URL dingbatURL = this.getClass().getResource("/fonts/dingbat.ttf"); 

が続いcreateFont(int,InputStream)方法についてFont方法に目を向けます。

Font dingbatFont = Font.createFont(Font.PLAIN,dingbatURL.openStream()); 

その後IS GraphicsインスタンスでFontを使用することが可能であるべきです。

+0

実際には、JavaアプレットをJFrameに変換するときに同じ問題が発生するため、パッケージ化の問題ではありません。私はそれを言及すべきだった、申し訳ありません。答えをいただきありがとうございます。それは私が解決策に目を向けるようになったためです。 – fury

+0

+1アンドリューハッピーニューイヤー – mKorbel

+0

@mKorbel同上。 :) –

関連する問題