No.2ベストアンサー
- 回答日時:
>「あ」とか「い」などの文字を貼り付けたボタンを作り、そのボタンが押されるとテキストフィールドに文字が入力されるもの
「あ」が押されたらキーAのキーイベントを発生させるだけ。
No.1
- 回答日時:
1:日本語入力環境がインストールされていないどのようなOSでも動くように、JAVAだけでカナ漢字変換を実装したい、という質問でしょうか?
2:それとも、かな漢字変換はOS依存のソフトウェア(ATOK,IME,canna,wnnなどなど)で行って、その結果をJAVAに渡したい、ということでしょうか?
3:または、単純に、JAVAのプログラムを作ってみたけれど、自分の環境でテキストボックスに日本語を入力しても文字化けしてしまうので困っている、という質問でしょうか?
この3つによって、大きくアプローチが異なりますのでお教えください。
現実的には、よほど「かな漢字変換もJAVAで実装しないと困る」ような状況でない限り、「かな漢字変換」の機能はOS依存が普通なのではないかと思います。
たとえば、日本語を勉強している英語圏の人が自分のプログラムをダウンロードしたとき、その人の環境(OS)に日本語入力の機能がなくても、日本語が表示できれさえすれば、かな漢字変換で日本語を打てるようにする、などという要望です。
かな漢字変換ソフトは、高度な技術な上、辞書を作成するのに人海戦術に近い膨大な作業量がありますから、個人で1から実用的なものを開発するのは、非現実的です。cannaのようなフリーソフトもありますが、これらは歴史が古く多くの人がメンテナンスしているので成立しています。
OSに、日本語の「かな漢字変換」の機能が入っている場合、話はぐっと簡単になります。この場合、うまくいけば、awtやswingでテキストボックスを作ってやるだけで、日本語がそこに入力できるはずです。OSによって、EUC,SJIS,Unicodeなど、さまざまなコードでJAVAの実行環境に変換後の文字を渡してきますが、コード変換->フォント->表示の機能は、JAVAでは、かなりのマイナー言語で無い限りほぼサポートされているといっていいと思います。フォントさえインストールすれば、表示はできるようになっています。
OS依存の「かな漢字変換」ソフトを通しても、文字がうまく表示できない場合は、
もらった文字列->Unicodeへの変換(JAVA内では、すべての文字列がUnicodeです)
コードの表示(Unicodeのどの文字にどのフォントを割り当てるかは、JAVA実行環境のfont.propertiesという一連のファイルに記録されています。その設定がおかしいと、フォントがインストールされていても正しく表示できません)
のどちらかです。
2:個々の環境に「かな漢字変換ソフト」が入っていない状況でも、JAVAだけで、かな漢字変換がしたい場合は、canna,wnnなどの、「ネットワーク越しに、ひらがなを受け取りカナ漢字変換を行った結果を返すソフト」を導入して、かな漢字変換サーバーをクライアントとは別に立ち上げ、JAVAアプリケーションの方では、サーバーにひらがなを渡して変換してもらうというのが、現実的なアプローチなのではないか?と思います。JAVAでも日本語・中国語・韓国語のような「カナ漢字変換」が必要となる場合は考えられていて、
ユーザーがテキストボックスに文字を入力->フィルター->実際にテキストボックスのインスタンスに入力が渡される
の、フィルターの部分が自由にプログラムできるようになっています。ただ、あまり使わない機能なので、実際にプログラムしようと思うと割と大変だと思いますが。
したがって、原理的には「カナ漢字変換」の機能まで含めてすべてJAVAで実装することは可能で、実際ATOK for JAVAのようなものも作られています。ただ、これは企業だからできることで、実際に自分で1から作成するのは無謀ですし、cannaのような既存のソフトウェアを移植するのもかなり大変です。ただし、すでに移植をどこかの誰かがやっている場合もありますが。
この回答へのお礼
お礼日時:2004/10/29 19:17
ご丁寧にありがとうございます。
すみません。言葉が足りなかったですね。
「あ」とか「い」などの文字を貼り付けたボタンを作り、そのボタンが押されるとテキストフィールドに文字が入力されるものを作ろうと考えています。
その際に、入力された文字を変換したいのです。こういった場合はどうなのでしょうか??
何度も申し訳ないです。宜しくお願いします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(Microsoft Office) Microsoft IME 一発で変換できない言葉がある 3 2022/07/19 19:29
- Word(ワード) IMEパッドがショートカットキーで開かないのですが。。。 5 2023/06/11 09:23
- ノートパソコン PCの漢字変換の変な癖?に困っています。 3 2022/10/11 21:27
- 中国語 新しい中国語入力ソフトを発明しました 22 2023/02/06 07:13
- Chrome(クローム) chromebookで「十分(10分)」 4 2022/06/30 17:41
- Word(ワード) MSオフィスのIMEは以前より文字変換能力が低下していませんか?(ATOKを買うべき?) 4 2023/08/03 09:15
- デスクトップパソコン IMEの不具合 4 2022/11/13 17:05
- Android(アンドロイド) スマホの日本語入力の選択肢を変えるには 4 2023/07/29 19:07
- ノートパソコン ”IMEが無効です” というメッセージが出ます! 4 2023/05/02 09:56
- その他(メールソフト・メールサービス) メールソフトを教えてください 1 2023/03/28 23:32
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
緯度、経度の 10進法と 60進法...
-
家電製品の電力周波数を変える機械
-
isoをimgに変換したいのですが...
-
C#でのpngからbmpへの変換について
-
VB 6 を VS 2012に変換するには?
-
Mac 乗数の入力方法
-
SJIS⇔UTF-8の文字コード...
-
機械語からアセンブリ言語への...
-
bitmapクラスをiconクラスに変...
-
VB6からVB2010への変換について
-
VB.NETからJavaに変換するツー...
-
tex 郵便記号のだしかた
-
VisualBasicをC++に変換する方...
-
自作ソフトキーボードによる文...
-
PIC16F877を用いたC言語でのAD...
-
c++でmatからvectorへの変換の...
-
php
-
VB.NETをJavaに変換するツール...
-
なぜ通信には16進数文字列が使...
-
色の変換
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
緯度、経度の 10進法と 60進法...
-
Excel-VBAのmsgBox()の不思議
-
3のつく数字と3の倍数のみを表...
-
bmp→jpgに、jpg→bmpに
-
分を時間に変換するプログラム
-
Mac 乗数の入力方法
-
家電製品の電力周波数を変える機械
-
10進数をBCDに変換する方法
-
VB6からVB2010への変換について
-
C/C++→JAVAに変換するツール
-
C#でのpngからbmpへの変換について
-
【EXCEL】カナ、ひらがなを英字...
-
数値英単語変換プログラム
-
エクセルVBAの自動変換機能?
-
なぜ通信には16進数文字列が使...
-
画像ファイル変換(Tiff→PDF)
-
UTF8→ShiftJISに変換したいです!
-
c++でmatからvectorへの変換の...
-
SJIS⇔UTF-8の文字コード...
-
VB.NETをJavaに変換するツール...
おすすめ情報