Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
HiDPI時代のFireworks
Search
Naoki Matsuda
October 25, 2013
Design
140
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
HiDPI時代のFireworks
Naoki Matsuda
October 25, 2013
More Decks by Naoki Matsuda
See All by Naoki Matsuda
管理画面の全体UXは利用時品質モデルで考える
readymadegogo
2
3.5k
インターフェースのユーザビリティ概論および調査手法について
readymadegogo
0
380
UIデザインのための行動・認知プロセス
readymadegogo
0
250
知っておくと得をする(かもしれない) SVGの基礎とviewBox
readymadegogo
1
180
XDはBeautiful SVGの夢を見るか
readymadegogo
4
1.5k
webフォントを120%活用するための基礎知識&最新動向
readymadegogo
7
3.7k
SVG is on your side @ MTDDC 2018
readymadegogo
6
2.1k
デザインフェーズにおけるワイヤーフレームとの付き合い方@WCAN201802
readymadegogo
5
500
ウェブデザインとセルフブランディング 2018
readymadegogo
2
300
Other Decks in Design
See All in Design
AI-Slopなデザインを生まないためのデザインプロセス戦略
takanorip
10
5.9k
PLATEAUで白い街を作る
aikautau
0
190
デザインツールを開く前に その画面は誰に何と言わせたい?受託UIデザイナーが顧客解像度を高める 「打ち合わせの場での確かめ方」
garyuten
1
230
もっともらしさ生成器と暮らす – AI懐疑派の試行錯誤
sekiguchiy
0
190
デザイナーの判断をAIにつなぐ ── 審美眼をハーネスする試み
kotasaito_cnt
0
640
ポートフォリオ_あやの
ngyenmazt1412
0
1.8k
富山デザイン勉強会_デザイン思考.pdf
keita_yoshikawa
3
170
Edmonton River Slidedeck
edmontonriver
0
300
Where Imagination Ends AI Begins
r5ni4
0
380
1000人規模の組織でデザインハーネスを導入するための第一歩
pkshadeck
PRO
5
4k
20260422_Midosuji_Tech
takuyay0ne
2
110
Look Dev Meetup #50
baku89
1
500
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Testing 201, or: Great Expectations
jmmastey
46
8.3k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
67
58k
KATA
mclloyd
PRO
35
15k
What Being in a Rock Band Can Teach Us About Real World SEO
427marketing
0
1.1k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
590
Bootstrapping a Software Product
garrettdimon
PRO
306
120k
Optimising Largest Contentful Paint
csswizardry
37
4k
Amusing Abliteration
ianozsvald
1
300
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
HiDPI ࣌ͷ Fireworks দాथ Flickr : ebayink
݄ ൃച দాथ
σόΠεͷߴղ૾Խ Retina Display දతͳͷ͕ɺ"QQMFͷ (iPhone 326 ppi) (iPad 264 ppi)
What’s HiDPI ?
HiDPI = ߴϐΫηϧີ = ߴdevice-pixel-ratio
device-pixel-ratio ?
device-pixel-ratio )5.-ίϯςϯπͷQYΛ ࣮ࡍͷσόΠε্Ͱ ԿഒͷQYͰ ඳը͢Δ͔Λࣔ͢
͑ɺͳΜͯʁ は Flickr : 5TBIJ-FWFOU-FWJ
device-pixel-ratio = 2
device-pixel-ratio = 2 @1x Resolution (4dpx) @2x Resolution (16dpx)
<img src="xxx.png" width="320"> device-pixel-ratio = 2
iPhone 4ʙ Android 2 1.5 ͕ଟ͍ device-pixel-ratio 326 ppi 250
ppi
3 device-pixel-ratio INFOBAR A02 Xperia Z HTC J butterfly 440
ppi
ਐΈଓ͚Δɺ σόΠεͷ)J%1*Խ Flickr : Jeffrey
WORKFLOW for HIDPI
J04ΞϓϦσβΠϯͷ3FUJOBରԠ ϫʔΫϑϩʔ͕ʹͳΓ·ͨ͠ IUUQpSFXPSLTTNBTIJOHNBHB[JOFDPNEFTJHOJPTBQQTXJUIBEPCFpSFXPSLT
όγϟϩά3FUJOBରԠ༻ʹϖʔδΛ ͚Δ'JSFXPSLTίϚϯυ IUUQDSFBUJWFUXFFUOFUCMPHSFUJOBJNBHFFYQPSUFSIUNM
ը૾Λ3FUJOBରԠͰॻ͖ग़͢͠Δ 'JSFXPSLTͷ֦ுػೳ࡞ͬͨΑɻ IUUQDSFBUJWFUXFFUOFUCMPHSFUJOBJNBHFFYQPSUFSIUNM
גࣜձࣾ·΅Ζ͠ ·ͭͩͳ͓͖͞Μͷ߹
ΧϯόεɺجຊతʹXQY ϏοτϚοϓ·ͣγϯϘϧԽ !Yͷը૾͚ͩॻ͖ग़͠ !Yͷը૾ҰׅͰʹϦαΠζ $44 47( 8FC'POUTΛ׆༻
Χϯόεԣ෯QY
Χϯόεԣ෯QY 640px w ଟ͘ͷεϚϗͷ ϒϥβ͕ɺԣ෯ QYͳͨΊ w ͦͷ··ॻ͖ग़ͤɺ 3FUJOBରԠՄ w
ίʔμʔ͕ผͷ߹ Ͱɺࣦഊ͢Δ͜ͱ͕ ͳ͍ ϝϦοτ
640px w ͯ͢ͷύʔπɺ ςΩετͷαΠζΛ ഒʹܭࢉ͢Δඞཁ͕ ͋Δ w ࣮ػͷ࣮ੇͱͷࠩҟ͕ ͋ΓɺαΠζײ͕ ͔ͭΈʹ͍͘
σϝϦοτ Χϯόεԣ෯QY
Χϯόεԣ෯QY w ͋ͱ͔Β!Yը૾͕ ࡞Γʹ͍͘ w ϏοτϚοϓΛ ֦େ͢ΔͱྼԽ͢Δ w ςΩετͷϑΥϯτ αΠζ͕͓͔͘͠ͳΔ
w εϥΠε่͕ΕΔ w ॻ͖ग़ͨ͠ޙͰഒʹ Ͱ͖ͳ͍ 320px σϝϦοτ Χϯόε͕ԣ෯QYͩͱ
Χϯόεԣ෯QY ࣮ػͰͷαΠζײ͕ ͔Γʹ͚͘Ε ࡞ͬͨΧϯϓʹɺ ڞ௨ϥΠϒϥϦͷ ʮJ1IPOFˠ)BSEXBSFʯΛ ॏͶͯΈ·͠ΐ͏ ը໘͕QYʹͳ͍ͬͯ·͢
Χϯόεԣ෯QY ͦΕͰ·ͩɺ ࣮ػͰͷαΠζײ͕ ͔Γʹ͚͘Ε LiveView https://itunes.apple.com/jp/app/liveview/id301069270?mt=8
None
Χϯόεԣ෯QY QYͷେ͖͍αΠζͰ ࡞͓͚ͬͯɺ খ͍͞αΠζͲ͏ͱͰͳΔʂ
ഒͰ࡞Δίπ
ഒͰ࡞Δίπ _ࢀߟ Workflow OptimizationDesign Cutting Edge iOS Apps With Adobe
Fireworks http://fireworks.smashingmagazine.com/2012/12/03/design-ios-apps-with-adobe-fireworks/ ߴ͞ɺ෯ɺCPSEFS෯ɺ ͯ͢ΛۮͰ࡞Δ ʹॖখͨ͠ࡍɺΤοδ͕ ϘέΔͨΊ Why ?
ഒͰ࡞Δίπ _ࢀߟ Workflow OptimizationDesign Cutting Edge iOS Apps With Adobe
Fireworks http://fireworks.smashingmagazine.com/2012/12/03/design-ios-apps-with-adobe-fireworks/ 1IPUPTIPQϥΠϒ ΤϑΣΫτΘͳ͍ ֦େॖখͨ͠ࡍɺൺྫͯ͠ ϦαΠζ͞Εͳ͍ͨΊ Why ?
ഒͰ࡞Δίπ _ࢀߟ Workflow OptimizationDesign Cutting Edge iOS Apps With Adobe
Fireworks http://fireworks.smashingmagazine.com/2012/12/03/design-ios-apps-with-adobe-fireworks/ ؙ֯ɺͳΔ͘ $44Ͱ࣮͢Δ ॖখͨ͠ࡍɺͭͿΕͯ͠·͏ ͜ͱ͕͋ΔͨΊ Why ?
ഒͰ࡞Δίπ ඪ४ͷςΫενϟ Θͳ͍ ςΫενϟഒαΠζ͕ͳ͘ɺ ϦαΠζͰ͖ͳ͍ͨΊ _ࢀߟ Workflow OptimizationDesign Cutting Edge
iOS Apps With Adobe Fireworks http://fireworks.smashingmagazine.com/2012/12/03/design-ios-apps-with-adobe-fireworks/ Why ?
ഒͰ࡞Δίπ Subtle Patterns ߴ࣭ͳςΫενϟΛ !Y !YͷηοτͰ ͍ͯ͠Δ Why ? _ࢀߟ
Subtle Patterns http://subtlepatterns.com
ഒͰ࡞Δίπ In general, bitmaps are your enemy when designing iOS
apps. Ivo Mynttinen ͬ͘͟Γ͍͑ɺJ04ΞϓϦΛ σβΠϯ͢Δ্ͰϏοτϚοϓ ܅ͷఢɺͬͯײ͡ɻ
ϏοτϚοϓγϯϘϧԽ
Χϯόεԣ෯QY άϥϑΟοΫ γϯϘϧ ඇഁյฤू ϏοτϚοϓγϯϘϧԽ͓ͯ͘͠
Χϯόεԣ෯QY άϥϑΟοΫγϯϘϧ ඇഁյฤू w γϯϘϧԽͨ͠ը૾ ֦େॖখΛ܁Γฦͯ͠ ྼԽ͠ͳ͍ w ճసΏ͕ΈΛ Ճ͑ͯɺݩը૾ͷঢ়ଶ
ͦͷ·· w ը૾େ͖Ί QYҎ ্ Ͱ༻ҙ͠ɺ γϯϘϧԽ͔ͯ͠Β େ͖͞Λௐ ϏοτϚοϓΛ ֦େɾॖখɾճస γϯϘϧΛ ֦େɾॖখɾճస ྼԽ อ࣋ ϏοτϚοϓγϯϘϧԽ͓ͯ͘͠
ϏοτϚοϓγϯϘϧԽ͓ͯ͘͠ γϯϘϧͷҙ γϯϘϧͷதͰ ࢉɾεΫϦʔϯͳͲͷ ϨΠϠʔελΠϧ͑ͳ͍ γϯϘϧͷதͷ εϥΠεͷॻ͖ग़͕͠όάΔ ʢ$4ҎԼͷ߹ʣ
ϏοτϚοϓγϯϘϧԽ͓ͯ͘͠ γϯϘϧԽ͓͚ͯ͠ɺ QY͔Β֦େͯ͠͏ͳͲ Ͳ͏ͱͰͳΔʂ
!Yͱ!Yͷը૾ॻ͖ग़͠
!Yͱ!Yͷը૾ॻ͖ग़͠ ·ͣɺ'8͔Β!Yͷը૾Λॻ͖ग़͢ όονͰҰׅͰʹϦαΠζͯ͠!YΛ༻ҙ
!Yͱ!Yͷը૾ॻ͖ग़͠ ํ๏ͦͷ Automator w ʮ!Yʯͷը૾Λෳ w αΠζௐͰʹ ϦαΠζ w ϑΝΠϧ໊͔Β
ʮ!YʯΛআ͢Δ w BQQԽͰ͖ΔͷͰศར
!Yͱ!Yͷը૾ॻ͖ग़͠ @ࢀߟ JQIPOF༻ͷը૾!YQOH͔Β௨ৗͷΛੜ IUUQEIBUFOBOFKQEPPSTJEF Shell Script w pOEͰʮ!Yʯͷ ը૾Λ୳͢ w
TJQTίϚϯυͰԣ෯Λ औಘ w TJQTίϚϯυͰʹ ϦαΠζ w XBUDIͰ͖ͨΓศར #!/bin/sh #dir=$1 find $dir -name "*@2x.*" | while read file; cd $(dirname $0) && pwd do width=`sips --getProperty pixelWidth $file | sed -E "s/.*pixelWidth: ([0-9]+)/ \1/g" | tail -1` width=`expr $width / 2` newFile=`echo $file | sed 's/@2x//'` sips --resampleWidth $width $(basename "$file") --out $(basename "$newFile") done ํ๏ͦͷ
!Yͱ!Yͷը૾ॻ͖ग़͠ w ઌͷҊͱಉ͜͡ͱ͕Մೳ w '8ίϚϯυԽͰ͖Δ w 8JOEPXTͰ0, w ઌͷҊΑΓը࣭͕ ྑ͛͞
w ੜͨ͠ը૾αΠζ͕ ܰΊ FW’s Batch ํ๏ͦͷ
!Y !Yը૾ͷৼΓ͚ʁ
[email protected]
sample-image.png !Y !Yը૾ͷৼΓ͚ K2VFSZͰʮdevicePixelRatioʯΛผ͢Δ EFWJDF1JYFM3BUJP͕ʮʯҎ্ͷσόΠεͰɺ JNHΛʮˎˎˎ!YQOHʯͳͲ ϑΝΠϧ໊ʹ!Y͕͍ͭͨํʹࠩ͠ସ͑Δ sample-image.png
!Y !Yը૾ͷৼΓ͚ K2VFSZͰʮdevicePixelRatioʯΛผ͢Δ $(function(){ if( 'devicePixelRatio' in window && window.devicePixelRatio
> 1 ){ var imgHidpi = $( 'img.hidpi' ).get(); var imgHidpiLength = imgHidpi.length; for (var i=0,l=imgHidpiLength; i<l; i++) { var src = imgHidpi[i].src; src = src.replace(/\.(png|jpg|gif)+$/i, '@2x.$1'); imgHidpi[i].src = src; }; } });
!Y !Yը૾ͷৼΓ͚ @ࢀߟ Adaptation for Retina display http://egorkhmelev.github.com/retina/ Optimising for
High Pixel Density Displays. http://menacingcloud.com/? c=highPixelDensityDisplays
!Y !Yը૾ͷৼΓ͚ Media QueryͰഎܠը૾ΛৼΓ͚Δ .selector { background: url(../sample.png) no-repeat; }
@media (-webkit-min-device-pixel-ratio: 1.5) { .selector { background-image: url(../
[email protected]
); background-size: cover; } }
!Y !Yը૾ͷৼΓ͚ $44ͷʮ-webkit-image-set()ʯͰৼΓ͚Δ .selector { background: ɹɹ-webkit-image-set ( ɹɹɹurl( sample.png
) 1x, ɹɹɹurl(
[email protected]
) 2x ɹ ); }
!Y !Yը૾ͷৼΓ͚ .FEJB2VFSZͷ+4൛ ňwindow.matchMediaʯͰৼΓ͚Δ var mq = window.matchMedia( "only screen
and ( -webkit-min-device-pixel-ratio: 1.5)" ); if(mq.matches) { ... }
!Y !Yը૾ͷৼΓ͚ Cloud ͷը૾ৼΓ͚αʔϏεͰղܾ ReSRC.it http://www.resrc.it/ Sencha.io Src http://www.sencha.com/learn/how-to- use-src-sencha-io/
!Y !Yը૾ͷৼΓ͚ +4ϥΠϒϥϦʮConditionizrʯͰৼΓ͚Δ ߴਫ਼ࡉσόΠεʹͷΈʹద༻ͤ͞Δ +4 $44 $MBTTΛৼΓ͚ΒΕΔ <html class="retina"> <script>
conditionizr({ retina : { scripts: true, styles: true, ɹɹɹɹɹɹɹɹɹɹclasses: true } }); </script> Conditionizr http://conditionizr.com
!Y !Yը૾ͷৼΓ͚ ͨͩɺ͜Ε͔Β!Yͷը૾ඞཁͳ͍͔ w ࠓϞόΠϧσόΠεͷ͕ͯ͢)J%1* w 1$ͷ)J%1*Խ͜Ε͔Βීٴʁ w ͦͦɺ38%ͷීٴͰϐΫηϧʹґଘ ͠ͳ͍σβΠϯ͕ٻΊΒΕΔ
ϏοτϚοϓ
WORKFLOW for HIDPI NO MORE BITMAP
)J%1*ରԠͷ ߴղ૾ͳ ը૾ॏ͍ σόΠεͷ ը໘αΠζ͕ ߋʹଟ༷Խ ϏοτϚοϓը૾ͷ՝
ϐΫηϧύʔϑΣΫτͳ ϏοτϚοϓʹཔΕͳ͍࣌ JNHը૾ࣸਅਤ൛ʹͷΈ͏Α͏ʹͯ͠ɺ ΞΠίϯͳͲͷڞ௨ίϯϙʔωϯτ ϏοτϚοϓΛࢦ͢
'JSFXPSLTతϏοτϚοϓ ͱ͍͏ΑΓɺJNHཁૉ
'JSFXPSLTతϏοτϚοϓ SVG + Web Fonts w ϕΫλʔ 47( ϐΫηϧʹґଘ͠ͳ͍
w '8Ͱ֦ுػೳΛͬͯ 47(ग़ྗͰ͖Δ w 8FC'POUTԽ͢Ε ৭ɾαΠζΛ$44Ͱ༰қʹ มߋՄೳ w ͍ܰ
'JSFXPSLTతϏοτϚοϓ SVG ΛରԠσόΠεͰ͚ͩ͏ <script src="jquery.js"></script> <script src="modernizr.js"></script> <script> if(!Modernizr.svg) {
$('img[src*="svg"]').attr('src', function() { return $(this).attr('src').replace('.svg', '.png'); }); } </script>
'JSFXPSLTతϏοτϚοϓ Data URI Scheme w #BTFܗࣜͰɺ )5.-$44ʹهड़ w H[JQ͕༗ޮʹͳΔ ͍ܰ
w ࣮ɺϏοτϚοϓͰ͕͢ w ม֦ுػೳ͕ग़Δӟ data:image/ png;base64,iVBORw0KGgoAAAANSUhEUgA AAABQCAYAAABoMayFAAAABHNCSVQICAgIf AAAAAlwSFlzAAALEgAACxIB0t1+/ AAAABx0RVh0U29mdHdhcmUAQWRvYmUgRml vcmtzIENTNui8sowAAAJ/ cHJWV3ic7ZffkZswEMZlEclaiSJSgm/ ck5+vHXeSpxSQcQXXRBrIhOxKAvNH4nwzh 1hYBPJvdz+B5F9/f/5W7+q9k+3W3Xi/ drdLd712Vz6eu8ulu/BRdedzd1ad4sdgsP O9t7ABx988MEHH3zwwQcffPDBBx988MEHH +MTb34nK/P3ovsKP9BeVuR72m0v8kOKrs2 iD+FF28L3Q1NZ/z7CQNv49+tK/jQS6Wn+T
'JSFXPSLTతϏοτϚοϓ Data URI Scheme ͷมπʔϧ Data URI Converter http://www.macupdate.com/app/mac/ 46143/data-uri-converter
duri.me a super simple dataURI tool http://duri.me
'JSFXPSLTతϏοτϚοϓ Data URI Scheme ͷมπʔϧ Sublime Text 2 + Image2Base64
https://github.com/tm-minty/sublime-text-2-image2base64
'JSFXPSLTతϏοτϚοϓ @༨ஊ 'JSFXPSLTͷ$44εϓϥΠτ ػೳɺ)J%1*࣌Ͱ ͑ͳ͍ 3FUJOBରԠʢCBDLHSPVOETJ[FΛ ʹʣͯ͘͠Εͳ͍ 4B44 $PNQBTTͳͲʹ ͤͨ΄͏͕͍͍
·ͱΊ Χϯόεɺجຊతʹԣ෯QY ϏοτϚοϓγϯϘϧԽ ͳΔ͘ϕΫλʔʹΑΔύʔπ࡞Γ ͦͷάϥϑΟοΫɺϏοτϚοϓͰ ͋Δ͖͔ʁΛߟ͑Δ $44 47(͕ग़ྗͰ͖Δͷ͕'8ͷڧΈ
࠷ޙʹͻͱ͜ͱ
'JSFXPSLTؔͳ͍ωλ͕ଟͯ͘ ͍͢·ͤΜͰͨ͠
͋Γ͕ͱ͏ ͍͟͝·ͨ͠ দాथ Flickr : 4UFQIFO(FZFS