7

dom要素(span、div、imageなど)から画像を生成することは可能ですか?この場合、canvasは使用できません。また、一部のブラウザーで機能する限り、クロスブラウザー互換である必要はありません。:-)

ありがとう!

コミュニティ編集:「クライアントはすでにこれらの要素を問題なく表示できると思いますが、サーバーがたとえばサイトの周りにプレビュー画像を表示できるようにしたいですか?」「うん、正確に。少しプレビューするだけで、開いている図を確認できます。プレビューは他の小さな場所でも使用されます。」

4

3 に答える 3

3

他の場所に複製したい場合は-moz-element、Firefoxの実験的な非標準機能を使用できます。これにより、DOMの任意の部分を取得して、たとえば背景画像として使用できます。https://developer.mozilla.org/en/CSS/-moz-element

同様のハックは、を悪用することでWebkitで実行できます-webkit-box-reflect

于 2011-05-28T16:08:49.100 に答える
2

だから私は、クライアントがすでにこれらの要素をうまく表示できると思いますが、たとえばプレビューをサーバーに表示できるようにしたいですか?

うん、その通り。少しプレビューするだけで、開いている図を確認できます。プレビューは、他の小さな場所でも使用されます。– OP

クライアント側:

  • あなたは非常に...面白い何かを求めています。=)スクリーンショットを撮ることができるウェブベースのバグ追跡ソリューションがあるので、それは可能です。たとえば、グーグルで見つけたこのwebsite bug report screenshotランダムなものは、ブラウザ拡張機能を使用して魔法を実行しているようです。

  • また、おそらく、Flashを使用してこの魔法を実行できる可能性があります。

  • または、大きなオーバーヘッドが発生しない場合は、を使用してオンザフライで「画像」を生成できますが<div style="overflow:hidden; position:relative;"> (insert all your dom elements here) </div>、単一の画像に非常に非常に多くの要素が含まれている場合、これは大幅に遅くなります数秒かけて一度に1つずつページにhtmlを挿入しない限り、実装したあらゆるタイプの「プレビューページ」のレンダリング。ただし、ページはまだ少し遅れている可能性があります。

サーバ側:

  • ただし、これを行うための最もポータブルな方法は、プログラムでアクセスできるように設計されたサーバー側のWebレンダリングエンジン(できればサンドボックス化)を使用することです。つまり、ページのスクリーンショットを撮ることができます。
于 2011-05-28T16:33:46.540 に答える
0

MWSnapのような別のスクリーンキャプチャプログラムを使用するのはどうですか?

于 2011-05-28T16:18:13.547 に答える