ベースは、こちらのブログで公開されていたコード。深く感謝!
Fabric.jsを使ってLGTM画像を作る | KRAY Inc
ページ下にあるリポジトリよりファイルをダウンロードさせていただき、先日インストールしたVisualStudioCodeのウィンドウにファイルをmain.jsとindex.htmlをドロップして開き、それぞれを編集する。
実はここに至るまでに、FabricJSの公式にある以下のサイトのソースをコピーして使えないかと、しばらくいろいろ探っては見たのだが、うまくいかなかった。Kitchensink | Fabric.js Demos
というのも、このサイトではfubricJSをAnglularJSで操作するようにつくってあるから。
(そして自分はAnglularJSについて、さっぱり知らないから。)
参考になったのは、他には以下のWeb。
fabric.jsで画像を描画する
fabric.jsを利用したシンプルホワイトボード – jsdo.it – Share JavaScript, HTML5 and CSS
LGTM Maker
いずれのサイトの作者さんのサンプルコードや解説で、だいぶ理解を深めることができた。
似たようなので以下もみつけた。まだじっくり見ていないけど、役に立つかも。
LGTM Editor
ところで、downloadリンクをクリックするとcanvasに配置した画像を保存できる・・・はずなのだが、うまくいかない。
数時間試行錯誤してみたが、やっぱりだめ。Google検索で「fabric.Image.fromURL save」といれて情報をあさりまくって、やっと見つけた良いページ。
以下のページに「画像はローカルに置いたやつをできれば使ってください」とあった。
javascript.log
自分のコードでは、横着して外部のサイトの画像を適当にローカルからリンクしていたので、画像をきちんとローカルに保存しなおしてそれを読むようにしたら、ちゃんとdownloadできるようになった。感謝である。
2017/11/11(土)追記:
PDF出力ができるように、jspdfをCDNで読み込むようにした。
<script src=”https://cdnjs.cloudflare.com/ajax/libs/jspdf/1.3.5/jspdf.min.js”></script>
普段はFFを使っているのだが、なぜかタブが余計に開く。
調べてみると、FFとChromeとEdgeの3つのブラウザでは、挙動が違う。
とりあえず、すべてのブラウザで保存できるようにできたけども、FFでは症状が回復せず。わからん。これは後日の課題としておこう。