IT仕事

FabricJSについて調べてみた。

投稿日:2017年11月8日 更新日:

ベースは、こちらのブログで公開されていたコード。深く感謝!
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では症状が回復せず。わからん。これは後日の課題としておこう。

-IT仕事

執筆者:

関連記事

no image

不動産プラグインの「トップ物件表示」ウィジェットが9件目から段ズレする。

解決できなくて、数時間、悩んだ~。 結局わかったのは、 ・ウィジェットのブロックの高さ調整にJQueryを使っている。CSSで決め打ちではない。 ・PHPのコードで、物件4件ごとに高さを決めている。 …

Power Automate Desktopでダイアログでのファイル選択完了判定

今回Power Automate Desktopで、やりたかったこと: (人間が作業)Webブラウザからファイルのアップロードするダイアログボックスで、ファイルを選択してOKボタンを押すところまで。( …

UiPathのレコーディングが遅い件が改善

UiPathのブラウザーでのレコーディングが、最近、遅くて仕方がない。 前は、こんなに遅くなかったのに、なんでだろう。 Webページ上のセレクトボックスひとつ選択して、マウスポインタが青い輪郭の半透明 …

Power Automate Desktopで .NETスクリプトを実行して正規表現で文字を抜き出す

やりたかったことは、 文字列を与えて、その文字列から正規表現でハイフンに挟まれた文字列を取り出すこと。 ChatGPTに質問したら、それらしいスクリプトは作ってくれたけど、いざ動かすとエラーになり、正 …

no image

セキュアド合格!!

昨日、秋に受験した情報セキュリティアドミニストレータの合格証書が届いた。 ウレシー!! だって落ちに落ちて、3度目の正直だもん。 年に1度しかない試験だもん。 今度落ちたらもう受験するのやめようかと思 …