匿名質問者

javascriptライブラリでブラウザの画面キャプチャが可能なものがありました。どういう仕組みなんですか?

ブラウザに実装されているAPIで表示されている画面そのものを画像として出力するものがあるということでしょうか?

回答の条件
  • 1人50回まで
  • 登録:
  • 終了:2014/11/28 17:00:07

回答1件)

匿名回答1号 No.1

http://snowsaber.dip.jp/java/memo/01_screenshot.html

> (標準ライブラリのみで可能)

具体的にはcreateScreenCaptureメソッドを呼び出すだけで誰でも使える
仕組みに関するこれ以上の解説は開発者以外無理です

他1件のコメントを見る
匿名回答1号

おっと失礼。そのページで紹介しているのは、あくまでhtml2canvasというライブラリに収められた関数。それを解析した人は何人かいるようですね。

http://www.moongift.jp/2011/08/20110811-3/
> html2canvasのテクニックは簡単に言えばCanvasタグの中で独自のレンダリングエンジンを使って取得したHTMLを描き出すという方法だ。

http://sig.droppages.com/Code+Reading/html2canvas
こちら、ソースを展開した手順と実際の動作がどういうものなのかについては解説があるんですが、実際のソースがどういうものなのかについては書いてありません。

ということで、実際の作画はHTMLのcanvas要素に頼っているものの、そのレンダリングを全てjavascript上でコントロールしているのでしょう。この際、文字も画像として出力、同じキャンバス内に強引に押し込めているものと思われます。つまり、ファイルとして出力されるのはこのキャンバスの方という事になります。

2014/10/29 21:25:03
匿名回答3号

なんだ、一度、外に出るのか >html2canvas
じゃあ、Webkit 使ってレンダリングしてるようなサービスのと、あまり変わらないな...

2014/10/30 15:05:45

コメントはまだありません

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません