Soumettre la recherche
Mettre en ligne
FileReader and canvas and server silde
•
0 j'aime
•
569 vues
Net Kanayan
Suivre
FileReader and canvas and server silde
Lire moins
Lire la suite
Technologie
Signaler
Partager
Signaler
Partager
1 sur 34
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
Webアプリケーションフレームワーク flask
Webアプリケーションフレームワーク flask
XMLProJ2014
Getting started with ES6 : Future of javascript
Getting started with ES6 : Future of javascript
Mohd Saeed
kontainer-js
kontainer-js
Kuu Miyazaki
Prototypeベース in JavaScript
Prototypeベース in JavaScript
Ryo Maruyama
jQuery勉強会#4
jQuery勉強会#4
Ryo Maruyama
ES6 はじめました
ES6 はじめました
Net Kanayan
150421 es6とかな話
150421 es6とかな話
kotaro_hirayama
JavaScript 実践講座 Framework, Tool, Performance
JavaScript 実践講座 Framework, Tool, Performance
クラスメソッド株式会社
Recommandé
Webアプリケーションフレームワーク flask
Webアプリケーションフレームワーク flask
XMLProJ2014
Getting started with ES6 : Future of javascript
Getting started with ES6 : Future of javascript
Mohd Saeed
kontainer-js
kontainer-js
Kuu Miyazaki
Prototypeベース in JavaScript
Prototypeベース in JavaScript
Ryo Maruyama
jQuery勉強会#4
jQuery勉強会#4
Ryo Maruyama
ES6 はじめました
ES6 はじめました
Net Kanayan
150421 es6とかな話
150421 es6とかな話
kotaro_hirayama
JavaScript 実践講座 Framework, Tool, Performance
JavaScript 実践講座 Framework, Tool, Performance
クラスメソッド株式会社
ES6 - JavaCro 2016
ES6 - JavaCro 2016
Nenad Pecanac
JavaScript : What is it really? AND Some new features in ES6
JavaScript : What is it really? AND Some new features in ES6
Aayush Shrestha
JavaScript.Next Returns
JavaScript.Next Returns
dynamis
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
kenji4569
ECMAScript 6 Features(PDF 版)
ECMAScript 6 Features(PDF 版)
taskie
Startup JavaScript
Startup JavaScript
Akinari Tsugo
はじめてのWallaby.js
はじめてのWallaby.js
Shunta Saito
断言して間違えると信頼度が低下するというベイズの話
断言して間違えると信頼度が低下するというベイズの話
Junya Hayashi
アニメーションの実装つらい話
アニメーションの実装つらい話
kata shin
Nds meetup8 lt
Nds meetup8 lt
ushiboy
Hello npm
Hello npm
Muyuu Fujita
Learn ES2015
Learn ES2015
Muyuu Fujita
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
Haraguchi Go
これからのJavaScriptの話
これからのJavaScriptの話
Shogo Sensui
これからのJavaScriptー関数型プログラミングとECMAScript6
これからのJavaScriptー関数型プログラミングとECMAScript6
TanUkkii
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
Kazuhiro Yoshimoto
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
kamiyam .
マイクロインタラクション事始め以前
マイクロインタラクション事始め以前
Koji Ishimoto
React UI Development: Introduction to "UI Component as API"
React UI Development: Introduction to "UI Component as API"
Itaru Kitagawa
大規模プロダクト Webpack やっていく気持ち
大規模プロダクト Webpack やっていく気持ち
Takumi Ohashi
Canvas勉強会
Canvas勉強会
Tsutomu Kawamura
Flash Builder4 と FlashCatalyst を使ってみた
Flash Builder4 と FlashCatalyst を使ってみた
guest0ba46c3
Contenu connexe
En vedette
ES6 - JavaCro 2016
ES6 - JavaCro 2016
Nenad Pecanac
JavaScript : What is it really? AND Some new features in ES6
JavaScript : What is it really? AND Some new features in ES6
Aayush Shrestha
JavaScript.Next Returns
JavaScript.Next Returns
dynamis
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
kenji4569
ECMAScript 6 Features(PDF 版)
ECMAScript 6 Features(PDF 版)
taskie
Startup JavaScript
Startup JavaScript
Akinari Tsugo
はじめてのWallaby.js
はじめてのWallaby.js
Shunta Saito
断言して間違えると信頼度が低下するというベイズの話
断言して間違えると信頼度が低下するというベイズの話
Junya Hayashi
アニメーションの実装つらい話
アニメーションの実装つらい話
kata shin
Nds meetup8 lt
Nds meetup8 lt
ushiboy
Hello npm
Hello npm
Muyuu Fujita
Learn ES2015
Learn ES2015
Muyuu Fujita
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
Haraguchi Go
これからのJavaScriptの話
これからのJavaScriptの話
Shogo Sensui
これからのJavaScriptー関数型プログラミングとECMAScript6
これからのJavaScriptー関数型プログラミングとECMAScript6
TanUkkii
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
Kazuhiro Yoshimoto
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
kamiyam .
マイクロインタラクション事始め以前
マイクロインタラクション事始め以前
Koji Ishimoto
React UI Development: Introduction to "UI Component as API"
React UI Development: Introduction to "UI Component as API"
Itaru Kitagawa
大規模プロダクト Webpack やっていく気持ち
大規模プロダクト Webpack やっていく気持ち
Takumi Ohashi
En vedette
(20)
ES6 - JavaCro 2016
ES6 - JavaCro 2016
JavaScript : What is it really? AND Some new features in ES6
JavaScript : What is it really? AND Some new features in ES6
JavaScript.Next Returns
JavaScript.Next Returns
Google App EngineでTwitterアプリを作ろう
Google App EngineでTwitterアプリを作ろう
ECMAScript 6 Features(PDF 版)
ECMAScript 6 Features(PDF 版)
Startup JavaScript
Startup JavaScript
はじめてのWallaby.js
はじめてのWallaby.js
断言して間違えると信頼度が低下するというベイズの話
断言して間違えると信頼度が低下するというベイズの話
アニメーションの実装つらい話
アニメーションの実装つらい話
Nds meetup8 lt
Nds meetup8 lt
Hello npm
Hello npm
Learn ES2015
Learn ES2015
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
Bacon.jsではじめる関数型リアアクティブプログラミング入門 with ES6
これからのJavaScriptの話
これからのJavaScriptの話
これからのJavaScriptー関数型プログラミングとECMAScript6
これからのJavaScriptー関数型プログラミングとECMAScript6
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
JavaScript(AngularJS・React.js)で作る iOS・Androidアプリハンズオン
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
Node.js をさりげなく取り入れた 最近のフロントエンド事情について
マイクロインタラクション事始め以前
マイクロインタラクション事始め以前
React UI Development: Introduction to "UI Component as API"
React UI Development: Introduction to "UI Component as API"
大規模プロダクト Webpack やっていく気持ち
大規模プロダクト Webpack やっていく気持ち
Similaire à FileReader and canvas and server silde
Canvas勉強会
Canvas勉強会
Tsutomu Kawamura
Flash Builder4 と FlashCatalyst を使ってみた
Flash Builder4 と FlashCatalyst を使ってみた
guest0ba46c3
プロジェクト2B 中間発表
プロジェクト2B 中間発表
Kodai Takao
Docker 17.06 Updates 最近何が変わったの?
Docker 17.06 Updates 最近何が変わったの?
Masahito Zembutsu
メトロスタイルアプリ開発最初の一歩
メトロスタイルアプリ開発最初の一歩
ShinichiAoyagi
Google App Engineとその影響(補足)
Google App Engineとその影響(補足)
なおき きしだ
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
Risa Yuguchi
7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar
Atushi Sugiyama
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Shumpei Shiraishi
渕田研究室全体ゼミ論文紹介 - 第1回 -.pptx
渕田研究室全体ゼミ論文紹介 - 第1回 -.pptx
MantarohYoshinaga
Firefox OS カスタム ROM の作成
Firefox OS カスタム ROM の作成
Honma Masashi
Silverlightの今
Silverlightの今
信之 岩永
VisualSFMとMeshLabとCloudCompareによるドローン撮影画像を用いたデジタル地図作成
VisualSFMとMeshLabとCloudCompareによるドローン撮影画像を用いたデジタル地図作成
Hiroshi Yamaguchi
Cloudianの構築と運用の基礎 (Cloudian Summit 2012)
Cloudianの構築と運用の基礎 (Cloudian Summit 2012)
CLOUDIAN KK
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
Takashi Endo
勉強会資料①
勉強会資料①
真亮 坂口
Xとかオワコン?
Xとかオワコン?
Naohiro Aota
AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 -
SORACOM, INC
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
Sho Ito
SilverlightとSharePoint2010の紹介
SilverlightとSharePoint2010の紹介
Tadahiro Higuchi
Similaire à FileReader and canvas and server silde
(20)
Canvas勉強会
Canvas勉強会
Flash Builder4 と FlashCatalyst を使ってみた
Flash Builder4 と FlashCatalyst を使ってみた
プロジェクト2B 中間発表
プロジェクト2B 中間発表
Docker 17.06 Updates 最近何が変わったの?
Docker 17.06 Updates 最近何が変わったの?
メトロスタイルアプリ開発最初の一歩
メトロスタイルアプリ開発最初の一歩
Google App Engineとその影響(補足)
Google App Engineとその影響(補足)
ワイヤーフレームを高速にXDらしく作る
ワイヤーフレームを高速にXDらしく作る
7/7 WordBench kobe dreamweaver seminar
7/7 WordBench kobe dreamweaver seminar
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
Webフロントエンド開発の最新トレンド - HTML5, モバイル, オフライン
渕田研究室全体ゼミ論文紹介 - 第1回 -.pptx
渕田研究室全体ゼミ論文紹介 - 第1回 -.pptx
Firefox OS カスタム ROM の作成
Firefox OS カスタム ROM の作成
Silverlightの今
Silverlightの今
VisualSFMとMeshLabとCloudCompareによるドローン撮影画像を用いたデジタル地図作成
VisualSFMとMeshLabとCloudCompareによるドローン撮影画像を用いたデジタル地図作成
Cloudianの構築と運用の基礎 (Cloudian Summit 2012)
Cloudianの構築と運用の基礎 (Cloudian Summit 2012)
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
2014年メディア工房勉強会 第1章「Webの仕組みとHTML5」
勉強会資料①
勉強会資料①
Xとかオワコン?
Xとかオワコン?
AWSクラウドデザインパターン - JEITA講演 -
AWSクラウドデザインパターン - JEITA講演 -
Concentrated HTML5 & Attractive HTML5
Concentrated HTML5 & Attractive HTML5
SilverlightとSharePoint2010の紹介
SilverlightとSharePoint2010の紹介
Plus de Net Kanayan
Osc16gm
Osc16gm
Net Kanayan
Open source
Open source
Net Kanayan
Http2入門の入門
Http2入門の入門
Net Kanayan
Es6 cognition
Es6 cognition
Net Kanayan
Image convert
Image convert
Net Kanayan
Fxos lt
Fxos lt
Net Kanayan
Ssl
Ssl
Net Kanayan
Blueberrypi
Blueberrypi
Net Kanayan
Browser push notifications
Browser push notifications
Net Kanayan
Http
Http
Net Kanayan
Basic vulnerability
Basic vulnerability
Net Kanayan
Windows store app html
Windows store app html
Net Kanayan
Js kusen
Js kusen
Net Kanayan
Sass less
Sass less
Net Kanayan
Ll xcode
Ll xcode
Net Kanayan
Web creed
Web creed
Net Kanayan
Js mvc
Js mvc
Net Kanayan
Tdd&peapro
Tdd&peapro
Net Kanayan
J S Smartphone
J S Smartphone
Net Kanayan
Nseg jquery mobile
Nseg jquery mobile
Net Kanayan
Plus de Net Kanayan
(20)
Osc16gm
Osc16gm
Open source
Open source
Http2入門の入門
Http2入門の入門
Es6 cognition
Es6 cognition
Image convert
Image convert
Fxos lt
Fxos lt
Ssl
Ssl
Blueberrypi
Blueberrypi
Browser push notifications
Browser push notifications
Http
Http
Basic vulnerability
Basic vulnerability
Windows store app html
Windows store app html
Js kusen
Js kusen
Sass less
Sass less
Ll xcode
Ll xcode
Web creed
Web creed
Js mvc
Js mvc
Tdd&peapro
Tdd&peapro
J S Smartphone
J S Smartphone
Nseg jquery mobile
Nseg jquery mobile
Dernier
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
sugiuralab
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
FumieNakayama
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
FumieNakayama
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
Yuki Kikuchi
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NTT DATA Technology & Innovation
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
Hiroshi Tomioka
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
akihisamiyanaga1
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
博三 太田
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
UEHARA, Tetsutaro
Dernier
(9)
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
TataPixel: 畳の異方性を利用した切り替え可能なディスプレイの提案
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
クラウドネイティブなサーバー仮想化基盤 - OpenShift Virtualization.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
AWS の OpenShift サービス (ROSA) を使った OpenShift Virtualizationの始め方.pdf
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
自分史上一番早い2024振り返り〜コロナ後、仕事は通常ペースに戻ったか〜 by IoT fullstack engineer
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
CTO, VPoE, テックリードなどリーダーポジションに登用したくなるのはどんな人材か?
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
モーダル間の変換後の一致性とジャンル表を用いた解釈可能性の考察 ~Text-to-MusicとText-To-ImageかつImage-to-Music...
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
デジタル・フォレンジックの最新動向(2024年4月27日情洛会総会特別講演スライド)
FileReader and canvas and server silde
1.
FileReaderとcanvas とサーバサイド @kanayannet Gunma.web #24
2.
自己紹介名前: 金澤宏昭
3.
SNS Twitter : @kanayannet Facebook
: HiroakiKanazawa
4.
愛犬家
5.
今日話すことFileReader canvas サーバサイド 挙動の違い 不具合いろいろ まとめ
6.
FileReader
7.
概要 ユーザのコンピュータ内にあるファイル(もしくはバ ッファ上の生データ)をWeb アプリケーションから 非同期的に読み込むことが出来ます。読み込むファイ ルやデータはFile ないしBlob
オブジェクトとして指 定します。 by Mozilla
8.
規格 HTML5 主にJS から呼び出す
9.
canvas
10.
概要 図形などを描画する為の新しいHTML 要素です。例え ば、グラフを描く、写真を合成する、簡単なアニメー ションからあまり簡単ではないアニメーションの作成 に用いる事が出来ます。 by
Mozilla
11.
規格 HTML5 主にJS から呼び出す
12.
FileReader と Canvas 1. input type="
le" からjavascript で画像データを抽出 2. 抽出したデータをcanvas に移す 3. canvas で画像を加工 4. 適切なサイズ(横幅、高さ)に加工 5. 加工した画像を表示
13.
ネットワーク転送いらず 画像を投稿する前の確認画面などでもネットワーク転 送し画像を適切なサイズに加工 こういう技術がないと..画像加工はサーバサイドでや らざるを得なかった。
14.
サーバのリソース節約 端末で画像加工するので、各々の端末のリソースで済 みます。
15.
サーバサイド Linux CentOS ImageMagick
16.
今回 HTML5 向けのブラウザが出て数年が経過...もうガンガ ンやってもいんじゃね?と思いつつ サーバサイドに送らず、画像を加工した結果... まあ、色々あったので話します(笑)
17.
挙動の違い
18.
デモ canvas
19.
ちなみにJSはこんな感じ $(document).ready(function(){ $("#uploadFile").change(function(){ varcanvas=$("#myCanvas").get(0); varctx=canvas.getContext("2d"); //inputtypefile object varfile=this.files[0]; //mime if(!file.type.match(/^image/(png|jpeg|gif)$/))return; varimage=$('#image').get(0); varreader=newFileReader(); //FileReader読 込
完了 reader.onload=function(evt){
20.
続き //image 読 込
完了 image.onload=function(){ varchangeWidth=this.width*0.7; varchangeHeight=this.height*0.7; canvas.width=changeWidth; canvas.height=changeHeight; ctx.drawImage(this,0,0,this.width,this.height,0,0,changeWidth,changeHeight } //base64 画像 URL 指定 image.src=evt.target.result; } // 読 込 reader.readAsDataURL(file); }); });
21.
次はサーバサイド ImageMagick
22.
どうでした?
23.
違いは.. ぼやけとジャギリ(シャープ)具合 風景よりも文章のある画像の方が解りやすいかも?
24.
ではもう一度 canvas ImageMagick
25.
違いがあると? 例えば...前はImageMagick で画像縮小し canvas で画像縮小したものに切り替えてしまうと.. 画像の印象が変わってしまう。
26.
裏テク canvas で縮小する際、一気に縮小しようとせず.. 少しずつ縮小すると...それほどジャギらなくなりま す。
27.
不具合いろいろ
28.
iOS iOS8.0.0 , iOS8.0.1 readAsDataURL
でエラーが出ます。 非同期でinput type=" le" の中を読むコマンド mobile safari だけでなくchrome も起きるら しい...
29.
Android Android Browser で不具合色々 Android
4系(4.4未満くらい?)の標準装備のブラウ ザ 自分がこう呼ぶのは..google analytics でそう呼ば れているので。 AOSPブラウザーって呼ぶこともある?
30.
Android Browser readAsDataURL で読み込めなかったり データ読み込み後、mime が取れなかったり readAsDataURL
-> canvas にデータを移す途中でハン ぐったり 最悪ブラウザ落ちたり..涙
31.
Android Browser 機種によって不具合の症状が違います汗 端末ベンダーがよくカスタマイズしてプレインストー ルしているからか?
32.
Android でも chrome は不具合に遭遇したことはありません。 テストした機種は7機種
33.
まとめ画像縮小の挙動が違うので..単なる縮小と侮るなかれ ジャギりが目立たない小さいサムネイル用画像なら使 えるかな? 端末によって不具合違うの嫌だ 本当に嫌だ。
34.
ご清聴 ありがとうございま した!
Télécharger maintenant