Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
HiDPI時代のFireworks
Search
Naoki Matsuda
October 25, 2013
Design
130
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.4k
インターフェースのユーザビリティ概論および調査手法について
readymadegogo
0
380
UIデザインのための行動・認知プロセス
readymadegogo
0
240
知っておくと得をする(かもしれない) 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
The Art of Caring
klemens
0
370
富山デザイン勉強会_プレゼンテーション.pdf
keita_yoshikawa
0
110
体験負債を資産に変える組織的アプローチ
hikarutakase
0
1.6k
情報を翻訳する-伝わる可視化3原則とオープンデータ活用-
hjmkth
1
320
染み出し好きの、 染み出しコントロール論
mukai_takeru
0
360
JBUG大阪#9_登壇資料_引き継ぎで困らないためのBacklogWikiの整え方_ミスと属人化を防ぐために、 “次の人が動ける状態”をどう残すか
webnaut
1
210
なぜ、インサイトを貯めるのか?
tajima_kaho
3
2.5k
Decksh keywords
ajstarks
0
110
トランジションの冒険 自分と世界を変える冒険の書 / Transition Adventure
dmattsun
2
230
AI時代に必要な アイデアの形
uxman
0
250
test deck title
shotamatsuo
0
1.5k
「見せる」登壇資料デザインの極意
takanorip
7
1.4k
Featured
See All Featured
The World Runs on Bad Software
bkeepers
PRO
72
12k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
4.2k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
32
3k
How STYLIGHT went responsive
nonsquared
100
6.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.3k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
56k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
330
SEO for Brand Visibility & Recognition
aleyda
0
4.7k
A better future with KSS
kneath
240
18k
Design in an AI World
tapps
1
270
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
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