質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

Q&A

1回答

3934閲覧

Canvasの画像をぼかしたい

agepan

総合スコア66

Cordova

Cordovaは様々なデバイスで使うことができるオープンソースなモバイル用開発プラットフォームです。開発者に各デバイスの元のプラットフォームで開発する必要をなくし、HTML・JavaScript・CSSなどの一般的なウェブのテクノロジーを使ってすべてのデバイスで展開することができるモバイルのアプリケーションを生成することを可能にします。

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

jQuery

jQueryは、JavaScriptライブラリのひとつです。 簡単な記述で、JavaScriptコードを実行できるように設計されています。 2006年1月に、ジョン・レシグが発表しました。 jQueryは独特の記述法を用いており、機能のほとんどは「$関数」や「jQueryオブジェクト」のメソッドとして定義されています。

Monaca

「Monaca」はiOS、Android、Windows向けのアプリ開発に対応した、Cordovaベースのモバイルアプリ開発プラットフォームです。HTML5、JavaScriptといったWeb標準技術を用いてモバイルアプリ開発を行うことができます。

0グッド

1クリップ

投稿2020/03/02 04:51

編集2020/03/02 04:54

現在Monacaでアプリを開発しています。
アプリ内で画像を縮小して保存する処理をいれており、この際に画像をぼかしたいと考えています。

画像縮小の処理(下記コード)では、Canvasを作成し、サイズを指定し、そこに画像ファイルを流し込むことで、縮小を実現しています。

画像をぼかしたい場合、Canvasに対してぼかしを掛ける方法があるようで、それを実現してくれそうなライブラリとして『Konva.js』を見つけました。このライブラリのぼかし機能を使えばできるかもしれないと思うところまで来ました。しかしそこにあるサンプルコードをどのように組み込めば、Canvasにぼかしを適用できるのか全く分かりません。

サンプルでは『lion』がCanvas?に相当していそうで、これに対してぼかしフィルタを掛けています。これをCanvas・Blobデータに変換できればいけそうな気はしますが、その方法が分からないところです。

ちなみに上記サンプルではスライダーでぼかしの大きさを変えられるようになっていますが、決め打ちの大きさでぼかせられれば問題ありません。

Canvasについて詳しい方、よろしくお願いいたします。

JavaScript

1function imageResize (){ 2 3 var image = new Image(); 4 image.src = 画像URL; 5 image.onload = function (e){ 6 7 var canvas = document.createElement('canvas'); 8 9 canvas.width = 300; 10 canvas.height = 300; 11 canvas.getContext("2d").drawImage(image, 0, 0, 300, 300); 12 13 // おそらくここでぼかし処理を入れるコードが入る 14 15 // カンバスデータをblobに変換 16 canvas.toBlob(function(blob) { 17 →blobデータをファイル保存する処理へ 18 }, "image/jpeg"); 19 } 20} 21

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

スマホからなので簡単に
blur()でぼかせば良いのでは?

  • Canvas編

https://developer.mozilla.org/en-US/docs/Web/API/CanvasRenderingContext2D/filter

  • CSS Filter編

filter - CSS: カスケーディングスタイルシート | MDN

投稿2020/03/02 05:19

編集2020/03/02 14:41
oikashinoa

総合スコア2826

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

agepan

2020/03/02 05:21

画像のぼかし処理をスマホ上で実行させたい都合があり、このblur()はiOS Safariが対応していないようです。
oikashinoa

2020/03/02 14:42 編集

CanvasのBlur()ではなくCSS Filterにもblur()有りました。コッチは表を見る限りsafari対応です。 本文にurlを書きました filter: blur(15px);
agepan

2020/03/03 01:46

ありがとうございます、上記のページをよく読んでみます。 CSSにも確かにBlurがあるんですが、画像の大きさによってはスマホでは結構負荷が掛かってくるので、使い方次第なところがありますね。この点についてもさらにちょっと調べてみようと思います!
oikashinoa

2020/03/03 06:09

想像ですが、CSSの方が負荷は低いはずです。 >アプリ内で画像を縮小して保存する処理をいれており、この際に画像をぼかしたいと考えています。 サムネイルとしてぼかしたものを作るのかなと思ってたんですが結構大きいのですかね?
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問