• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:文字装飾可能なテキストエディタはどうすれば)

文字装飾可能なテキストエディタの選び方

kacchannの回答

  • kacchann
  • ベストアンサー率58% (347/594)
回答No.2

#1です。 C#知らないので、恐縮です。(※Javaしか知らない^.^) ちょと思ったことと、不明な点があるのですが・・・。 >それでしたいことは、 >ヘルプ画面のように、一部の文字を反転させたり、 >装飾させて、テキスト形式(HTML)で保存させたいのですが、 >MSHTMLコンポーネントでは使い勝手が悪すぎます。 >リッチテキストボックスがありますが、、 >またOnPaintのイベントがありませんので、上書き描画がうまくできません。 とりあえず「既存のコンポーネント」として ・リッチテキストボックス ・MSHTMLコンポーネント の2つがありますよね。 で、やりたいことは (a)一部の文字列の反転(背景色適用) (b)よくある普通の装飾(スタイルとかサイズとか色とか下線とか) (c)HTML形式での保存 で、既存コンポーネントで不満な点は (d)MSHTMLは、使い勝手が悪い (e)リッチテキストボックス(とおそらくMSHTMLも?)は、上書き描画ができない -- ■不明な点 ・(d)について。 MSHTMLのどんな所が、使い勝手が悪いのですか? 逆に、リッチテキストボックスは、使い勝手がいいのですか? ■思ったこと ・(e)について。 既存のコンポーネントを使う限り、「上書き描画」は期待できないかも!?(自信なし) ・(a)について 一部の文字列への背景色適用は、 これも自作コンポーネントを作らないと無理かも!?(自信なし) ・(b)(c)について この機能は、おそらく「リッチテキストボックス」と「MSHTML」の両方で可能 ・だから「上書き描画」と「文字列への背景色適用」さえあきらめれば、 (使い勝手の問題をのぞけば)既存のコンポーネントで、 質問者さんの要求が満たされるかも?

manukedesu
質問者

お礼

リッチテキストボックスがHTMLで保存できるのは知りませんでした。 また、ご指摘のとおり、上書き描画や背景色の一部変更をあきらめれば、問題が無いかも知れません。 ただ、悪い癖のこだわり点は、 A)文章管理において、カラー文字に加えて、検索時に該当文字を明確にわかりやすくさせたい(文字反転が最適?)。 B)隠し文字か属性を表示文字に潜ませ、関連データを呼び出せるようにした。 C)願わくは、XMLで保存したい。なおデータ入力や画面表示は簡単にさせたい。 ABCは行いたいことの優先順序ですが、 ■リッチテキストボックスでは、  文字反転ができない上、RTFを解読してHTMLかXMLに変換するのは困難だった。※HTMLで保存できることを知らなかった。 ■MSHTMLにおいては、  使用方法がよくわからなくて、ファイルからの呼出しや保存はできたのですが、データベースで管理できる文字列(string型)からの読込みや保存の方法がわからなかった。  その上、データ入力がMSHTML上でできるのかどうかさえわからなかった。  ※リッチテキストボックスは表示画面に直接入力や編集ができ、それをもって使い勝手がいいと言った。 正直なところ、自作は避けたいし、Wordやc#の入力画面、またご存知でないかもしれませんが、ホームページビルダーの入力画面等、本当に使い勝手のいい入力編集画面が昨今あり溢れているのだから、たとえ有償であってもいいものがやがて登場するだろうと思えて、決心を鈍らせ、足踏み状態にあります。 手作りが簡単にできればいいのですが…… どうすればいいのでしょうかね…… MSHTMLでできますかね…… 日々、トホホ…です。

関連するQ&A

  • ダイナミックテキストを装飾したいです!

    テキストボックスからの入力にあわせて文字を画面に出力しています。(ダイナミックテキストです) フォントをそのまま使用するのではなく、たとえば文字に縁取りを入れたり影をつけるなど、装飾を入れたいのですが、どうやったらよいか分かりません! (ファイヤーワークスでいう「グロー」の効果などです) 静的フォントだったら凝ったつくりにできるのですが・・・ 使用しているバージョンはMXとMX2004です。 どうぞよろしくお願いします

    • ベストアンサー
    • Flash
  • 文字をテキストボックスの中央に

    テキストボックスの中央に文字を表示する方法ってありますか? センタリングとはちょっと違います。 縦書きのテキストボックスに1行入っているのですが、どうも左右の余白が等しくないのです。 テキストボックスの大きさは、変えたくないので「文字列にあわせて描画オブジェクトの大きさを調整する」のチェックははずしています。 word2003 winXP 利用

  • VB 2005 リッチテキストボックス 文字選択

    Visual Basic 2005 Express Editionを使っています。 趣味程度以下のレベルです。よろしくお願い致します。 質問の内容は、リッチテキストボックスの内容を選択(反転表示)して クリップボードに記憶させるコードを知りたいのです。 今、作っているのは、 Formの真ん中に、大き目のリッチテキストボックスを配置して 下にボタンを3つ配置しています。 ボタン1は (1)テキストボックスに"c:\mail\aaa.txt"を表示する。 (2)Cドライブのmailフォルダからaaa.txtをリッチテキストボックスに表示。 TextBox1.Text = "c:\mail\aaa.txt" RichTextBox1. LoadFile(TextBox1.Text, RichTextBoxStreamType.PlainText) と言うふうにしています。 同様に、ボタン2は bbb.txtをリッチテキストボックスに表示、 ボタン3はccc.txtをリッチテキストボックスに表示するようにしています。 使用方法としては、取引先とメールのやり取りを行う際に、 メールのパターンが3種類あって、これまでは、aaa.txtをメモ帳で 開いてはコピペしてメーラーに貼り付け。bbb.txtをメモ帳で開いては メーラーに貼り付け。を繰り返していました。 クリップボードに記憶させるのは、 Clipboard.SetDataObject(RichTextBox1.SelectedText) で、うまく行きましたが、クリップボードに記憶させる文字の選択は 手動でやっています。 また、文字の選択というのは、リッチテキストボックスに表示された、 文字を抜き出して選択するわけではなくて、表示されている全てを 選択(反転文字)にしたいのです。 わかりにくい説明で申し訳ありませんが、よろしくお願い致します。

  • WORDです。テキストボックスのサイズを文字に合わせるにはどうしたらいいでしょうか?

    いつもお世話になっています。テキストボックスのサイズを文字に合わせたいのですが、どうしたらいいでしょうか?本の操作手順には テキストボックスの書式設定をクリック     ↓ テキストボックスタブをクリック     ↓ 「文字列に合わせて描画オブジェクトのサイズを調整する」のチェックをオン     ↓ OKボタンをクリック   以上で高さを調整 オートシェイプの書式設定をクリック     ↓ 「描画オブジェクト内で文字列を折り返す」のチェックをオフ   以上で幅を調整 と書いてあったので実行するのですが、テキストボックスのサイズが変わりません。余白が右と下に残ったままです。なぜなのでしょうか?

  • テキストボックスの様に文字の周り(枠)をへこませてみせたい

    テキストボックスの様に文字の周り(枠)をへこませてみせたい <input type="text" name="field1" value="文字" />のタグを使った時のように 文字の周り(枠)がへこんで見えるように装飾したいのですがどうすればいいでしょうか どなたか教えてください。

    • ベストアンサー
    • HTML
  • PowerPointテキストボックスで右端の文字が消えてしまいます

    PowerPointによる資料作成でファイルを閉じて,開きなおすとテキストボックスに入力した文字の内の右端の1文字が消えてしまいます. オブジェクトの書式設定で表示される下記3項目は空です.  描画オブジェクト内でテキストを折り返す  テキストに合わせて描画オブジェクトのサイズを変更する  描画オブジェクト内でテキストを縦書きにする 当初,2項目目のサイズ変更が可能となっていたのでチェックをはずしましたが保存後にファイルを開きなおすと右端が消えていました.このまま印刷してみたところ,消えた文字は印刷されない状態でした. ファイルを開くたびに文字が消えていないかをチェックしてから印刷するのは大変なのでファイルの保存に関係なく,文字が消えないテキストボックスの設定を行いたいのですが,他に注意するポイントが思いつきません.どうかアドバイスを頂けますようお願いします. なお,ソフトのバージョンは以下の通りです. Microsoft Office PowerPoint 2003(11.8227.8221) SP3 よろしくお願い致します. m(_ _)m

  • 文字をアクティブにする方法

    テキストボックスを2つ作成(text1,text2)し、 text2にはあらかじめ文字を入れておきます。 text1からtext2へTabキーで移動したときに、 text2に入力されている文字がアクティブ(反転というのでしょうか) にすることはできますか? つまりアクティブになっていれば、文字の書き換えをしたいときに、 「BackSpace」キーなどで削除しなくても、 そのまま文字を打てば上書きされるようにしたいのです。 ご存知のかたがおりましたら教えてください。 Private Sub text1_Change() SendKeys "{tab}", False 'text2へ移動する End Sub

  • 表をテキストボックスに入れたい

    Word2007で表を作りました。 最下段の行が2ページ目に行くためテキストボックスに 表を入れ1ページにおさめたいと思います。 出来上がった表をテキストボックスに入れる方法を教えて下さい。 文字列をテキストボックスに入れるときは、文字列を選択して 挿入 → テキストグループ → テキストボックス → 横書きテキ ストボックスの描画で自動的にテキストボックスに入りますが 表は、文字列と同じようにできないのでしょうか

  • EXCELのテキストボックスについて

    図形描画のテキストボックスを使用して文字を色分けして使っています テキストボックスの3列目を赤色で点滅 別のテキストボックスの6列目を青で点滅 エクセルでは不可能なのでしょうか? どうか宜しくお願い致します。

  • word2010のテキストボックスの反転不具合

    2007まではテキストボックスをそのまま回転することは不可能でした(図に変えれば可能)。word2010ではこの点が改良され、テキストボックスが回転可能になり、便利になりました(自動的に図の扱いになっている?)。文字の入っているテキストボックスを回転させると逆さま文字ができます。同様に上下反転にしても逆さま文字ができます。ところが出来上がったwordを印刷すると、テキストボックスを回転させて作った文字はちゃんと回転した状態でプリントされますが、上下反転させて作ったテキストボックスは、画面上ではちゃんと逆さまになっているのですが、プリントすると逆さまにはなっていません。 プリント指示のバグでは?回転すればいいので大きな不具合ではないのですが、おかしいと思います。