JS/ES – 画像ファイルを読み込んでcanvasに表示

概要

JS/ES/JQueryで、ローカルのファイルを読み込んでcanvasに表示する手順。

大まかな流れは以下の通り。

  1. Imageクラスのオブジェクトを準備する
  2. document読み込み後(onload/ready)に以下を実行
    1. canvas要素の取得
    2. canvasからcontextの取得
    3. 画像ファイル選択時の処理
      1. 選択されたファイルのFileオブジェクトの取得
      2. FileReaderオブジェクトを構築
      3. FileReaderdata:URLとして読み込み
      4. FileReaderの読み込み完了時のリスナー登録
        • 読込後にリーダーの読み込み結果をImage.srcにセット
    4. Imageオブジェクトのロード後のリスナー登録
      • context.drawImagecanvasに描画

HTML

body内のhtmlは以下の通り。

input要素のtype属性をfileとすることで、HTML5のAPIが利用可能となる。

canvasのサイズは、ここではhtmlで設定しているが、スクリプトで動的に設定して画像サイズとcanvasのサイズを合わせることもできる。

JavaScript

全体の構造は以下の通り。ドキュメント内でグローバルに使う可能性があるImageオブジェクト以外は、onload/ready後の処理に入れている。

 

 

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です