From 53ab4d0419896e672f32fc5660b956b51e5a4a43 Mon Sep 17 00:00:00 2001 From: Saman Bemel-Benrud Date: Mon, 8 Apr 2013 17:29:09 -0400 Subject: [PATCH 1/6] moving to SVG for UI graphics. --- css/app.css | 30 +- img/sprite.png | Bin 14494 -> 0 bytes img/sprite.svg | 2326 ++++++++++++++++++++++++++++++++++++++++++++++ img/sprite2x.png | Bin 31478 -> 0 bytes svg/sprite.svg | 136 +-- 5 files changed, 2341 insertions(+), 151 deletions(-) delete mode 100644 img/sprite.png create mode 100644 img/sprite.svg delete mode 100644 img/sprite2x.png diff --git a/css/app.css b/css/app.css index 3ee648b9d..4bd656aeb 100644 --- a/css/app.css +++ b/css/app.css @@ -440,7 +440,7 @@ button.save.has-count .count::before { vertical-align:top; width:20px; height:20px; - background:transparent url(../img/sprite.png) no-repeat 0 0; + background:transparent url(../img/sprite.svg) no-repeat 0 0; text-indent:-9999px; overflow:hidden; } @@ -841,16 +841,16 @@ a:hover .icon.out-link { background-position: -500px -14px;} margin: auto; position: absolute; left: 0; right: 0; top: 19px; - background:transparent url(../img/sprite.png) no-repeat -240px -80px; + background:transparent url(../img/sprite.svg) no-repeat -240px -80px; } .preset-icon-fill.tag-shop, .preset-icon-fill.tag-building { - background:transparent url(../img/sprite.png) no-repeat 0 -80px; + background:transparent url(../img/sprite.svg) no-repeat 0 -80px; } .preset-icon-fill.tag-natural-water { - background:transparent url(../img/sprite.png) no-repeat -60px -80px; + background:transparent url(../img/sprite.svg) no-repeat -60px -80px; } .preset-icon-fill.tag-landuse, @@ -858,11 +858,11 @@ a:hover .icon.out-link { background-position: -500px -14px;} .preset-icon-fill.tag-natural-tree, .preset-icon-fill.tag-natural-grassland, .preset-icon-fill.tag-leisure-park { - background:transparent url(../img/sprite.png) no-repeat -120px -80px; + background:transparent url(../img/sprite.svg) no-repeat -120px -80px; } .preset-icon-fill.tag-amenity-parking { - background:transparent url(../img/sprite.png) no-repeat -180px -80px; + background:transparent url(../img/sprite.svg) no-repeat -180px -80px; } /* preset form basics */ @@ -1913,7 +1913,7 @@ img.wiki-image { width: 100px; margin: auto; margin-bottom: 10px; - background:transparent url(../img/sprite.png) no-repeat 0 -220px; + background:transparent url(../img/sprite.svg) no-repeat 0 -220px; } .modal-actions :first-child { @@ -2279,17 +2279,6 @@ img.wiki-image { only screen and (-o-min-device-pixel-ratio: 3/2), only screen and (min--moz-device-pixel-ratio: 1.5), only screen and (min-device-pixel-ratio: 1.5) { - .intro-points-add .tooltip-inner::before, - .intro-areas-add .tooltip-inner::before, - .intro-lines-add .tooltip-inner::before, - .walkthrough a:before, - .preset-icon-fill.icon-area, - .modal-actions button:before, - .map-control .icon, - .button-wrap .icon { - background-image: url(../img/sprite2x.png); - background-size: 600px 560px; - } a, button, .checkselect label:hover, @@ -2301,7 +2290,6 @@ img.wiki-image { } } - /* Scrollbars ----------------------------------------------------- */ @@ -2405,7 +2393,7 @@ img.wiki-image { content: ""; height: 80px; width: 200px; - background:transparent url(../img/sprite.png) no-repeat 0 -320px; + background:transparent url(../img/sprite.svg) no-repeat 0 -320px; } .intro-areas-add .tooltip-inner::before { @@ -2425,6 +2413,6 @@ img.wiki-image { .huge-modal-button .illustration { height: 100px; width: 100px; - background: rgba(0, 0, 0, 0) url(../img/sprite.png) no-repeat -301px -220px; + background: rgba(0, 0, 0, 0) url(../img/sprite.svg) no-repeat -301px -220px; margin: auto; } diff --git a/img/sprite.png b/img/sprite.png deleted file mode 100644 index ccda51669a7fe0f960e60ee7b6973a7a84fb2114..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14494 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 Ds&v|# diff --git a/img/sprite.svg b/img/sprite.svg new file mode 100644 index 000000000..f863f1c9e --- /dev/null +++ b/img/sprite.svg @@ -0,0 +1,2326 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/img/sprite2x.png b/img/sprite2x.png deleted file mode 100644 index 78df59ab73bad436973ff8ebb917a99abf92ae74..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 31478 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 Am;e9( diff --git a/svg/sprite.svg b/svg/sprite.svg index 2dc957abb..210ed9772 100644 --- a/svg/sprite.svg +++ b/svg/sprite.svg @@ -38,12 +38,12 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="16" - inkscape:cx="505.57911" - inkscape:cy="546.02445" + inkscape:zoom="1" + inkscape:cx="590.57911" + inkscape:cy="225.02445" inkscape:document-units="px" inkscape:current-layer="layer12" - showgrid="true" + showgrid="false" inkscape:window-width="1483" inkscape:window-height="804" inkscape:window-x="293" @@ -53,7 +53,7 @@ fit-margin-left="0" fit-margin-right="0" fit-margin-bottom="0" - showguides="true" + showguides="false" inkscape:guide-bbox="true" inkscape:snap-bbox="true" inkscape:snap-nodes="true" @@ -228,7 +228,7 @@ image/svg+xml - + @@ -815,130 +815,6 @@ id="path33359" d="m 354.5,22.999997 c -1.5,0 -2.5,2 -2.5,3 0,0.666667 0,1.333333 0,2 0,1 1,2.153847 1,2.153847 l 0,0.846153 -1.69231,0.384617 c -1.45419,0.330499 -2.02608,1.236079 -2.15384,2.76923 L 349,35.999998 l 12,0 -0.15385,-1.846154 c -0.12776,-1.533151 -0.69965,-2.438731 -2.15384,-2.76923 L 357,30.999997 l 0,-0.846153 c 0,0 1,-1.153847 1,-2.153847 0,-0.666667 0,-1.333333 0,-2 0,-1 -1,-3 -2.5,-3 z" style="color:#000000;fill:#ffffff;fill-opacity:1;fill-rule:nonzero;stroke:none;stroke-width:1;marker:none;visibility:visible;display:inline;overflow:visible;enable-background:accumulate" /> - - - - - - - - - - - - - - - - - - - - Date: Mon, 8 Apr 2013 19:21:21 -0400 Subject: [PATCH 2/6] reworked background reset button. --- css/app.css | 34 ++++++++-------------------------- img/sprite.svg | 20 +++++--------------- js/id/ui/background.js | 16 +++++++++++----- 3 files changed, 24 insertions(+), 46 deletions(-) diff --git a/css/app.css b/css/app.css index 4bd656aeb..8af8c61ba 100644 --- a/css/app.css +++ b/css/app.css @@ -1439,23 +1439,13 @@ img.wiki-image { border-radius:0 4px 0 0; } -.background-control button.active { - border-radius: 0; -} - .nudge-container { border-top: 1px solid #CCC; margin: 10px -10px -10px -10px; } -.background-control .adjustments button { - background: white; - text-transform: uppercase; - border-color: #CCC; -} - -.background-control .adjustments button:hover { - background:#ececec; +.background-control .adjustments button:last-child { + border: 0; } .hide-toggle { @@ -1483,12 +1473,12 @@ img.wiki-image { border-left: 4px solid transparent; } -.background-control .nudge { - text-indent: -9999px; - overflow: hidden; - width:16.6666%; +.background-control .nudge-container button { + float: left; + display: block; + width:20%; border-radius: 0; - border-right: 1px solid rgba(0, 0, 0, .5); + border-right: 1px solid #CCC; position: relative; } @@ -1526,15 +1516,6 @@ img.wiki-image { border-top: 5px solid #222; } -.background-control .nudge:first-child { - border-radius: 4px 0 0 4px; -} - -.background-control .reset { - width: 33.3333%; - border-radius: 0 4px 4px 0; -} - .opacity-options { background: url(../img/background-pattern-opacity.png) 0 0 repeat; height:20px; @@ -1566,6 +1547,7 @@ img.wiki-image { background: rgba(89, 123, 231, .5); opacity: .5; } + .background-control li.selected:hover .select-box, .background-control li.selected .select-box { opacity: 1; diff --git a/img/sprite.svg b/img/sprite.svg index f863f1c9e..c1b6909b7 100644 --- a/img/sprite.svg +++ b/img/sprite.svg @@ -38,22 +38,22 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="8" - inkscape:cx="292.29297" - inkscape:cy="549.88029" + inkscape:zoom="2.8284271" + inkscape:cx="200.82099" + inkscape:cy="540.68645" inkscape:document-units="px" inkscape:current-layer="layer12" showgrid="true" inkscape:window-width="1483" inkscape:window-height="804" - inkscape:window-x="790" + inkscape:window-x="35" inkscape:window-y="0" inkscape:window-maximized="0" fit-margin-top="0" fit-margin-left="0" fit-margin-right="0" fit-margin-bottom="0" - showguides="false" + showguides="true" inkscape:guide-bbox="true" inkscape:snap-bbox="true" inkscape:snap-nodes="true" @@ -777,11 +777,6 @@ id="path9870-1" inkscape:connector-curvature="0" /> - - diff --git a/js/id/ui/background.js b/js/id/ui/background.js index 2bc6e2c69..7fceee789 100644 --- a/js/id/ui/background.js +++ b/js/id/ui/background.js @@ -292,23 +292,29 @@ iD.ui.Background = function(context) { var nudge_container = adjustments .append('div') - .attr('class', 'nudge-container') + .attr('class', 'nudge-container cf') .style('display', 'none'); nudge_container.selectAll('button') .data(directions).enter() .append('button') .attr('class', function(d) { return d[0] + ' nudge'; }) - .text(function(d) { return d[0]; }) .on('mousedown', clickNudge); - nudge_container.append('button') - .text(t('background.reset')) + resetButton = nudge_container.append('button') .attr('class', 'reset') .on('click', function() { context.background().offset([0, 0]); context.redraw(); - }); + }) + + resetButton.append('div') + .attr('class','icon undo'); + + resetButton.call(bootstrap.tooltip() + .title(t('background.reset')) + .placement('right')); + context.map() .on('move.background-update', _.debounce(update, 1000)); From 828a1083126335ee8a8ef897853162457320f73f Mon Sep 17 00:00:00 2001 From: Saman Bemel-Benrud Date: Mon, 8 Apr 2013 19:31:22 -0400 Subject: [PATCH 3/6] fine-tuning bg adjustment ui. --- css/app.css | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/css/app.css b/css/app.css index 8af8c61ba..4e0758097 100644 --- a/css/app.css +++ b/css/app.css @@ -1415,7 +1415,7 @@ img.wiki-image { position: fixed; left: 30px; display: block; - padding: 10px; + padding: 10px 10px 0 10px; } /* Zoomer */ @@ -1439,9 +1439,13 @@ img.wiki-image { border-radius:0 4px 0 0; } +.background-control button.active { + border-radius: 0; +} + .nudge-container { border-top: 1px solid #CCC; - margin: 10px -10px -10px -10px; + margin: 0 -10px; } .background-control .adjustments button:last-child { @@ -1449,7 +1453,8 @@ img.wiki-image { } .hide-toggle { - padding-left: 12px; + display: block; + padding: 0 0 10px 12px; position: relative; } @@ -1460,7 +1465,7 @@ img.wiki-image { height: 0; width: 0; left: 0; - top: 4px; + top: 5px; border-top: 4px solid transparent; border-bottom: 4px solid transparent; border-left: 8px solid #7092ff; From 4158b1c48e102e681e46bb1b2caf81f83f223acd Mon Sep 17 00:00:00 2001 From: Saman Bemel-Benrud Date: Tue, 9 Apr 2013 12:34:57 -0400 Subject: [PATCH 4/6] use svg for radial menu. --- img/sprite.svg | 536 +++++---- js/id/svg/surface.js | 2 +- svg/sprite.svg | 2501 ------------------------------------------ 3 files changed, 245 insertions(+), 2794 deletions(-) delete mode 100644 svg/sprite.svg diff --git a/img/sprite.svg b/img/sprite.svg index c1b6909b7..7038ef046 100644 --- a/img/sprite.svg +++ b/img/sprite.svg @@ -38,12 +38,12 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="2.8284271" - inkscape:cx="200.82099" - inkscape:cy="540.68645" + inkscape:zoom="2" + inkscape:cx="120.5336" + inkscape:cy="410.89171" inkscape:document-units="px" inkscape:current-layer="layer12" - showgrid="true" + showgrid="false" inkscape:window-width="1483" inkscape:window-height="804" inkscape:window-x="35" @@ -53,7 +53,7 @@ fit-margin-left="0" fit-margin-right="0" fit-margin-bottom="0" - showguides="true" + showguides="false" inkscape:guide-bbox="true" inkscape:snap-bbox="true" inkscape:snap-nodes="true" @@ -228,7 +228,7 @@ image/svg+xml - + @@ -661,122 +661,108 @@ d="m 31,144 -1,1 0,1 1,1 8,0 1,-1 0,-1 -1,-1 z m 0,4 0,7 1,1 6,0 1,-1 0,-7 z m 2,2 1,0 0,4 -1,0 0,-1 z m 3,0 1,0 0,3 0,1 -1,0 z" id="path9820" sodipodi:nodetypes="cccccccccccccccccccccccccccc" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - + sodipodi:nodetypes="cccccccccssc" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + - - - - - + + + + + + + + + diff --git a/js/id/svg/surface.js b/js/id/svg/surface.js index c37f5d89b..5ffdbb835 100644 --- a/js/id/svg/surface.js +++ b/js/id/svg/surface.js @@ -102,7 +102,7 @@ iD.svg.Surface = function() { defs.append('image') .attr('id', 'sprite') - .attr('xlink:href', 'img/sprite.png') + .attr('xlink:href', 'img/sprite.svg') .call(autosize); defs.selectAll() diff --git a/svg/sprite.svg b/svg/sprite.svg deleted file mode 100644 index 210ed9772..000000000 --- a/svg/sprite.svg +++ /dev/null @@ -1,2501 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - From 2786faf051ef4b3c80b7faea3f0bc7c88edae82b Mon Sep 17 00:00:00 2001 From: Saman Bemel-Benrud Date: Tue, 9 Apr 2013 12:53:36 -0400 Subject: [PATCH 5/6] fix error in cursor. --- img/cursor-draw-connect-line.png | Bin 279 -> 452 bytes img/cursor-draw-connect-line2x.png | Bin 519 -> 832 bytes svg/cursors.svg | 58 ++++++++++++++++++++--------- 3 files changed, 40 insertions(+), 18 deletions(-) diff --git a/img/cursor-draw-connect-line.png b/img/cursor-draw-connect-line.png index 5d25489edb3c1a3ff7b7b15f63fe8face44eac1c..1228707295702c13b7b5468d62947714627f5151 100644 GIT binary patch delta 426 zcmV;b0agB&0>lH5B!2{RLP=Bz2nYy#2xN!=000SaNLh0L01edu01edvJ=R$90000P zbVXQnQ*UN;cVTj60C#tHE@^ISb7Ns}WiD@WXPfRk8UO$RK}keGR5*?8mAy^^K@>*M zT{fXXVo9jfN*_Qw;u>CH>8PdjndnV6LG}TR*qE%AB$i4=V}D~Y#S%7qEnpK|2X@5P zFPY@#&NpZ7Wd1}|*(DKa0@r{Cj8*k*m*3k-Td6-9jU-8LLE4fto zEBynlnrw-!65s>~ecwMUch>9mM`O(WX0Fj_bQg=oW!al$*(WgefH02Z+H$$f%gq?m zDGxNpbZp)@j(=-F=mUA0rV3)Ah3Anz^ypk z+~b^K$3vRrmK*b)~LwnXGrL{vodPv=lXTEN4_;P~w3>B_mnD%k1y;E0#u3}Ct! z&<1-RzE6Sfz7<+ws`}yb9?p{_Imq)|fP9^^!T?;3O(XFI2ymyWGZ85UeS-mf0q~ft Uj$Oy9bpQYW07*qoM6N<$f=ms+Bme*a delta 251 zcmV+R-d7Z3ergmKEfOB)YA+9=M81D5O*t2Ens9h|osyg!tY;@>CSB{QG8YFq1OEfPw zbfGIp2VL#aia}-}vb|GBHm1vSQM!7pZPV4}{0uyRBK?J??72NG)bX|(CUnU#vUwjM zbj!eWkkBRb{=kAY*nqU@S!JZpFF=BMD+Gp&ya4`IwnSze{%rsN002ovPDHLkV1m%9 BadH3v diff --git a/img/cursor-draw-connect-line2x.png b/img/cursor-draw-connect-line2x.png index 371e4d7cb8847bae8c30f67c846e8f6b7ffd7730..9e45b4011bec391f79876a6d624f77b1c9b37d53 100644 GIT binary patch delta 810 zcmV+_1J(S81i%K6BYyw{b3#c}2nYxWdHq)$ z8FWQhbW?9;ba!ELWdL_~cP?peYja~^aAhuUa%Y?FJQ@H10=-E@K~z|U?U~I^6Hye$ zf46N~gktasOkC2k(9J|h0|ui{;8%z%ZBie=JuBZpu?rW*wSOORX<~#}##u?Cm_Q&V zK7k6ig|D_B9PmOioVj+O}O?U0to^a=99C8qcdnio=8VficH% zv}IXY0Nb`}Gk-HPqd-GM9t;|A5g=?wDTUv@XktH(Ek02V0ZlaoG}RE$R6{^h#R0f{ z%)Ur61{9IyBS4n@J|ig+K`C_#xPq6@r6bOb44{;n1Lh*yZ2(_@HzKm9@bb7jz&JoE zm5S`uOeV9UwSL=aOg5XHuh;9dQEj@e+w!Zsz>@?}0Ds2w`Mh=HnPiy`8S>9t?=-9|c(w zz&b#&Sd>bovIDq1magmdQYw|oPO(^QXTR$T$N(ka%rP#u>yzB$6CBic;Bh<5jN-lg zoCn6@f`2^!2U3CWn*bVOEvv1&?EPuE9eh>BlcT+^3_Z6@QxEmt!0{VCl zMucky;h?`^CMw*^;G{S_SOwVL-q!7gt*x!9Uu^`&C4o+G*TZme0j>d*N+sFc+|(Nz z8@f~~wKI^<;lT&Z76;8%819;gygJPINq$8C0W66~-5+<@LJc48^^x{tO1Cn=W&Zvf oq9YLR3J26{XG<%PEhd!9 z<(H&28jY?BhjTb<#-KLYN=G=*ZnsCUWqQKP!$}3?u7?J+5E5*3S%V;W#0gq~6k2{R zHvxU$ALRvzmVY>~k0+*S+LOs-2os(;ses(|(0~>K_7P}6_cXxGV*G+xk;xE?)S({a z4)B33ELf#+G=q_`u3RI1k+GasHu3qN?`huc(+JQ1|v9f^a0IG32 zw_DL&*ugXb)i@nMK5qMRQvg3R1oCmvd3HcP?hNN=183ypPH}!FKql@(;4}ae;ZElE z0ux$|jjhQqFbOdWcRa6WagQ)p&^ojMU5hQd47~AoF&Q_|@e&=!3<)Ur4)wG6Uu-}J kkW1|&T$=MH^{T>Q-|nwS1AQg8x&QzG07*qoM6N<$f|gX~d;kCd diff --git a/svg/cursors.svg b/svg/cursors.svg index c7c22d682..1c71eb967 100644 --- a/svg/cursors.svg +++ b/svg/cursors.svg @@ -52,16 +52,16 @@ borderopacity="1.0" inkscape:pageopacity="0.0" inkscape:pageshadow="2" - inkscape:zoom="5.6568542" - inkscape:cx="-499.08138" - inkscape:cy="987.80023" + inkscape:zoom="1" + inkscape:cx="-405.07998" + inkscape:cy="990.65897" inkscape:document-units="px" - inkscape:current-layer="layer1" + inkscape:current-layer="cursor-draw-connect-line" showgrid="false" inkscape:window-width="1337" inkscape:window-height="840" - inkscape:window-x="337" - inkscape:window-y="105" + inkscape:window-x="457" + inkscape:window-y="78" inkscape:window-maximized="0" inkscape:snap-bbox="true" showguides="false" @@ -89,7 +89,7 @@ image/svg+xml - + @@ -97,6 +97,13 @@ inkscape:label="Layer 1" inkscape:groupmode="layer" id="layer1"> + + inkscape:export-ydpi="180" + transform="translate(20,0)"> + inkscape:export-filename="/Users/saman/work_repos/iD/img/cursor-select-line2x.png" + transform="translate(-20,30)"> + inkscape:export-ydpi="180" + transform="translate(-10,30)"> + inkscape:export-ydpi="179.88307" + transform="translate(10,0)"> + + inkscape:export-filename="/Users/saman/work_repos/iD/img/cursor-select-point2x.png" + transform="translate(10,0)"> + inkscape:export-ydpi="180" + transform="translate(30,0)"> + inkscape:export-ydpi="180" + transform="translate(-20,0)"> @@ -926,7 +946,8 @@ inkscape:label="cursor-draw" inkscape:export-filename="/Users/saman/work_repos/iD/img/cursor-draw2x.png" inkscape:export-xdpi="179.9978" - inkscape:export-ydpi="179.9978"> + inkscape:export-ydpi="179.9978" + transform="translate(-10,0)"> + inkscape:export-ydpi="180" + transform="translate(-10,0)"> From c996fabd148a5bb82f4b90ab8dc78afeb9915dad Mon Sep 17 00:00:00 2001 From: Saman Bemel-Benrud Date: Tue, 9 Apr 2013 13:00:15 -0400 Subject: [PATCH 6/6] optimizing sprite in img + adding unoptimized sprite to svg directory --- img/sprite.svg | 2661 ++++++------------------------------ svg/sprite-unoptimized.svg | 2267 ++++++++++++++++++++++++++++++ 2 files changed, 2665 insertions(+), 2263 deletions(-) create mode 100644 svg/sprite-unoptimized.svg diff --git a/img/sprite.svg b/img/sprite.svg index 7038ef046..f13952a2c 100644 --- a/img/sprite.svg +++ b/img/sprite.svg @@ -1,2268 +1,403 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/svg/sprite-unoptimized.svg b/svg/sprite-unoptimized.svg new file mode 100644 index 000000000..891ef25a8 --- /dev/null +++ b/svg/sprite-unoptimized.svg @@ -0,0 +1,2267 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +