2017-08-03 5 views
2

こんにちはみんな私は0と1のJavaで2次元配列を埋めることを試みています。 1は白を表し、0は黒を表します。私は、z 例にアルファベットA内のすべてのcharの1次元配列を持っているしたいと思います:Javaのアルファベットの文字ごとに1つの2次元配列

String[][] myArray = {//letter A 
    {"0", "0", "1", "0", "0"}, 
    {"0", "1", "0", "1", "0"}, 
    {"1", "1", "1", "1", "1"}, 
    {"1", "0", "0", "0", "1"}, 
    {"1", "0", "0", "0", "1"},}; 

それを行うための簡単な方法があります。私の2次元配列は22でなければなりません。

+0

この2次元配列がどのようにAに関連しているかを詳しく説明できますか? –

+0

これは、最終的に固定サイズのラスタフォント*を与えるでしょう。最初にフォントを扱うときは注意が必要なので、実際にどのように動作するかを調べる必要があります。例えば、 'jg'のような文字のため、*ベースライン*は一番下の行ではありません。そして、水平と垂直の間隔が16x22マトリックスに含まれているかどうか疑問に思ってください。 –

+1

@VidorVistrom 1を見ると、Aのように見えます。 –

答えて

1

ピクセルを "描画"してASCIIコードに変換するか、使用可能なASCIIまたはピクセルフォントを使用してフォーマットに変換する小さなエディタを開発できます。あなたはこの

tile based pixel font

のようなフォント、画像ベースのシンプルなタイルを取ると、画素情報を抽出し、ご使用のアレイ形式に変換する場合

は私が意味する、それが速くなります。文字は固定サイズなので、画像から特定の文字範囲を簡単に得ることができます。必要なのは、画像をロードして2次元ピクセル情報を読み取るだけですが、数行のJavaコードで失敗するはずです。

+0

この画像からピクセルを読み取る方法を教えてください。 –

+0

私はイメージを持っており、0を分けることは分かっていますか? –

+0

あなたは手紙がどこに必要なのかを把握するだけでいいですし、ループを使ってそれを繰り返すにはどれくらいの大きさの「タイル」がどれくらいあるのか分かります。私はMS Paintで画像を開いてズームインすると、左下隅にピクセル座標が表示されます。実際にピクセル座標で色を読み取るには、[this example](https://stackoverflow.com/a/22391906/7462657)を使用して、ピクセルが黒または白である場合にのみ返すように修正します。それは難しいことではありません。他の誰かが書いたコードを使用するのではなく、あなた自身でそれを理解する方が良いでしょう。 :) – xander

関連する問題