• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:中国語入力フォームの作り方。)

中国語入力フォームを作成する方法と管理コードの置き換え方

このQ&Aのポイント
  • 中国語入力フォームの作成方法と、入力された文字列を日本語フォントで示す管理コードに置き換える方法について教えてください。
  • 中国語入力フォームに入力された文字列を、日本語フォントで表示するための独自の管理コードへの置換方法について、教えてください。
  • 中国語入力フォームで入力された文字列を、日本語フォントで示すための独自の管理コードに置き換える手順を教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.5

ニーハオについて。 このQ&Aシステムは複数のサイトから同じ物が見られますが、サイトによって文字の扱いに違いがあります。 さらにブラウザによっても表示が変わりますので面倒なことになります。 この質問のNo7-8の私の回答に表示状況の画像があります。 http://oshiete1.goo.ne.jp/qa4537642.html これを見て分かるように、教えて!gooをFirefoxで見ると正しく文字が見えます。

akaginoyama
質問者

お礼

度々恐れ入ります。 まさしく、教えて!gooをFirefoxの組み合わせです。 やはり、ブラウザやサーバ側の事情も関係してくるのですね。 色々教えて頂きありがとうございます。 現時点では、何から初めてよいか解らず混乱してますが 一つずつ何がどのように影響するのか等整理しながら調べてみます。

その他の回答 (4)

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.4

このページのHTMLソースをテキストで見ると、確かに「好」の直前に \x00 (、つまり NUL 文字) が混入していますね。 No.3さんは、なぜそれが「ニー」の文字だと思うのですか? 質問者さん、そのとおりなのですか?

akaginoyama
質問者

お礼

No.3様、No.1様回答ありがとうございます。 "ニーハオ"でございます。 Firefox3で表示すると中国語書体で正しく表示されるようなのですが ご指摘から推測するとブラウザの問題も関係してくるようですね。 当方のPCには中国語フォントを入れていますがIMEでは日本語 設定になっているのでブラウザ側の表示設定と言う可能性を考えました。 このような、机上では気づかない実際にやってみないと解らない部分での 問題があるのではと思い質問させて頂いた理由もありました。 利用目的からは、単純に 「〇△■」と入力されたら→「001」と言う予め決められたコードに 変換すると言う事で良いのですが。 「0001~1000」番までの、コードに置換えする事がしたいのです。 「〇△■」の部分が単に、中国語漢字になるという事なのですが。 入力される単語は予め全て登録したものでよかったのですが、 説明不足で、何度もお手数掛けて申しわけありません。

回答No.3

まず、質問に中国語の漢字を使っているようですが、環境によって全く表示されませんので避けた方が良いです。 (No1,2さんへ:「好」に見えるものは「ニーハオ」が書かれています) 思うに、日本語の文字でない部分のみを文字コードか何かに置きかえればよいのではないでしょうか。 例えばHTMLの文字参照で置きかえれば、ニーハオは「你好」になります。 なお、フォントを気にされる理由がよく分かりません。 サーバにフォントがなくても文字列処理は当然できますし、そもそもサーバにフォントを置くのに手間もコストも要らないでしょう。処理結果を使う目的のためかとも思いますが、何に使うのか書かれておらず分かりません。

akaginoyama
質問者

お礼

ご指摘ありがとうございました。 >サーバにフォントを置くのに手間もコストも要らないでしょう この部分なのですが、広告付きなどの無料もしくは、安価なレンタル サーバを使いたいと思っています。 そうしたサーバでは、HTMLファイルやCGI以外のファイル を置く事も詳細な設定を変更する事も出来ないと認識していますが その範囲でフォントを入れる事は出来ないと考えておりました。 しかし、回答から推測するとサーバ側のフォントの問題は気にしなくて 良いのですね。 ブラウザの文字セットの問題と考えてよいのですね。 間違っていたらご指摘頂ければ、幸いです。 >処理結果を使う目的 処理後に変換された独自のコードは、中国語は全く関係ありません。 質問を出した時はイメージしやすいかと思い「中国語挨拶1」など と適当に書きましたが、全て1~1000番までの数字に入力された中国 単語を置き換えるだけです。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.2

No.1 です。 実現に向けて話を詰めようとされている心意気を感じますが、やはり目的と状況に依存する部分が多いので明快な回答はできないですね。 いずれも、普通は、経験を積んだ技術者が諸般の事情を考慮して決定する問題です。 > 置換えするのは、単語ばかりで、1000語程度です。 普通はサーバー側で処理すべきオーダーだと思いますが、サーバーが非力だとか、使うのは内輪の人間だけだから遅くても我慢できるとかの事情があれば、クライアント(閲覧者が使うPC)のCPUを使う JavaScript も選択肢かも知れません。 > 入力部分は相手のPC中国語にフォントがあるかどうか コピペで無く手入力するなら、「中国語IME」とかその類のものも必要かと思います。 > サーバー側にフォントを用意する必要は無い。 多分可能でしょうが、不利な局面が発生するかどうかは状況によるでしょう。 > あとはUTF-8で入力されたコードをサーバ側で置換えすると言う事でよいのですね。 目的によります。 目的が「Web漢和辞典」なら置換は不要で、入力語に対応する「辞書の本文」を別の場所に表示するだけですよね。 目的が「自動中日半翻訳」であれば、置換の前段階の「単語区切り処理」が必要でしょう。 「好」は、常に「中国語挨拶1」で良いのですか? 「好」を含む単語は無いのですか? 「中日友好」とか。

akaginoyama
質問者

お礼

>「好」常に「中国語挨拶1」で良いのですか? 後述してますが、環境の問題で正しく表示できてませんでした。 単語は予め決められた1000語と決まってますので、 それ以外の単語が入力される事はありませんし単語を分解して解析 等も全く必要ありません。 お手数掛けまして、申しわけありませんでした。

  • zxcv0000
  • ベストアンサー率56% (111/196)
回答No.1

まず、文字コードに UTF-8 を使いましょう。 UTF-8 は日本語に必要な文字も中国語に必要な文字も持っているので、コード変換とか「中国語入力用のフォーム」とかを考える必要が無くなります。 「好」⇒「中国語挨拶1」 は、文字列置換ですね。 HTMLだけでは無理で、CGI とかのサーバーサイド処理で実現するのが普通と思います。 「好」の様な置換対象語の種類数が数十とかそれ以下なら JavaScriptでもできます。 つまり、何が作りたいか、何が要求されるかによって、適切な手法は千差万別です。 ほとんどの手法で、それなりの技術力が要求されると思います。 どうしたら良いか見当も付かない人には難しいかも。

akaginoyama
質問者

お礼

回答ありがとうございました。 置換えするのは、単語ばかりで、1000語程度です。 入力部分は相手のPC中国語にフォントがあるかどうか サーバー側にフォントを用意する必要は無い。 あとはUTF-8で入力されたコードをサーバ側で置換えすると 言う事でよいのですね。

関連するQ&A

専門家に質問してみよう