2014-02-01から1ヶ月間の記事一覧

Integer.parseInt(String, int) の使用上の注意

Integer.parseInt(String, int) には使用上注意しなければならない挙動があり、結果が負の値になる 16 進数文字列をパースすると NumberFormatException が発生する。わかりやすいのは以下の例。 Integer.parseInt("80", 16); // 128 Integer.parseInt("FFFF…

実行中の JVM のビットモード判定

実行中の JVM が 32bit なのか 64bit なのかを判定したい。以下のエントリのメソッドがシンプルに実装されていて良い感じ。 [java]動作中のJavaVMが32Bitか64Bitかを判別 - maachangの日記 上記エントリにも書かれているが、プロパティの名前と意味がわかり…

Editor component まとめ

IT

「テキストエディタ実装したい病」が再発したので、いろいろ調べてみたまとめ。 SWT StyledText SWT StyledText は Canvas を継承して実装されている。継承してしまえば描画はやりたい放題で、文字以外の描画も自由自在。ただし、残念なことに特定のフォント…

各プラットフォームのフォントの高さについて

IT

フォントの高さ、というのがプラットフォーム毎に少しずつ違うようなので、簡単にまとめてみた。ここで言う「高さ」とは、一行表示する際に必要になる高さのこと。つまり、次の行との余白は含まない。 Microsoft (Win32 API) の場合 Height = Ascent + Desce…