2009-03-05 6 views
2

ASP.NETでは、複数行のテキストボックス(またはサードパーティ製のリッチテキストボックス)を使用している場合、ポストバック時にその内容をピクチャに変換できますか?私が変換したというのは、フォーマット&の画像を保持しているということです。ASP.NETコントロールをオンザフライでピクチャに変換することはできますか?

例えば、私は豊富な編集ボックスを持っています。エンドユーザーはファンシーテキストフォントとシンボルを直接追加することができます。一度「送信」を押すと、このリッチテキストコンテンツをビットマップとして保存する方法はありますか?またはこのようなサードパーティの豊富なエディットボックスがこの組み込み機能を持っていますか?

私はGDI +またはWPFが必要かもしれないと思うが、どこから始めるべきか分からない。

答えて

0

これは本当に厄介で醜いコードサンプルですが、それはすべての概念を一度にカバーします:How to Create (a) Text Image on the fly with ASP.NET

System.Drawing.Bitmapを新規に作成し、System.Drawing.Graphics.DrawString(text)を使用してこれを実行します。描画される文字列の大きさを推定し、キャンバスが十分に大きいことを確認する必要があります。フォントなどを設定することができますが、全体的にはそれを数回行うとかなり簡単です。

1

私は以前の答えがあなたに対処したかどうかはわかりません。エンドユーザー(ブラウザ)のウィンドウに表示されている内容をキャプチャしたいのですか?そして、BMPをあなたのサーバーに戻したいと思っています。おそらく、エンドユーザーが持っていないフォントサポートなどを持っている可能性があるため、またはイメージを持たない他のユーザーにこのイメージを表示したいと思うかもしれません。

ブラウザ内ではこれができないと確信しています。それは難しいはずのもののように聞こえる(私のデスクトップウィンドウの領域を簡単にキャプチャして戻すことができるウェブサイトを見るのは嫌だ)。私はあなた自身のActiveX/Silverlight/Flashコントロールを書くことの領域にいると思っていますが、これは賢明なことかどうかを検討する必要があります - あなたはあなたのブラウザーを制御できますか(言い換えれば、ユーザーが持つOS)そうでない場合は、OS /ブラウザマトリックスのすべての部分で動作するスクリーンキャプチャコントロールを得ることは、それが価値あるものよりも多くの作業になります。

おそらく、問題を拡大すると、より良い解決策が見つかるか、まったく違うアプローチになる可能性があります。

関連する問題