svgomg-ui/index.html

3 lines
19 KiB
HTML

<!doctype html><html dropzone><head><title>SVGOMG - SVGO's Missing GUI</title><meta name=theme-color content=#303F9F><meta name=viewport content="width=device-width,minimum-scale=1"><link rel=preload as=script href=js/page.js><link rel=preload as=script href=https://www.google-analytics.com/analytics.js><link rel=preload as=style href=css/all.css><link rel=preload as=style href="https://fonts.googleapis.com/css?family=Roboto:400,700|Inconsolata"><style>html,body{height:100%;margin:0;padding:0;overflow:hidden}html{font-family:roboto, sans-serif;-webkit-tap-highlight-color:rgba(0,0,0,0);background:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%202%202%22%3E%3Cpath%20d%3D%22M1%202V0h1v1H0v1z%22%20fill-opacity%3D%22.05%22%2F%3E%3C%2Fsvg%3E");background-size:16px 16px;background-color:#f2f2f2;transition:background-color 0.2s ease-in-out}pre,code,kbd,samp,tt{font-family:monospace,monospace;font-size:1em}button::-moz-focus-inner,textarea::-moz-focus-inner{border:0;padding:0}.main-menu{position:absolute;top:0;left:0;bottom:0;right:0;z-index:3;font-family:sans-serif}.main-menu.hide-font{color:transparent}.main-menu.hide-font .menu-footer-notes{color:transparent}.main-menu.use-font{font-family:inherit}.main-menu.hidden{pointer-events:none}.main-menu .menu{position:absolute;top:0;left:0;bottom:0;min-width:264px;width:40%;max-width:340px;background:#fff;box-shadow:3px 0 16px rgba(0,0,0,0.4);will-change:transform;overflow-x:hidden;overflow-y:auto;display:-webkit-flex;display:flex;-webkit-flex-flow:column;flex-flow:column}.main-menu .menu.transition{-webkit-transition:-webkit-transform 0.2s ease-out;transition:transform 0.2s ease-out}.main-menu .menu.hidden{-webkit-transform:translateX(-110%);transform:translateX(-110%)}.main-menu .menu>*{min-height:-webkit-min-content;min-height:-moz-min-content;min-height:min-content}.main-menu .overlay{position:absolute;top:0;left:0;bottom:0;right:0;background:rgba(0,0,0,0.4);will-change:opacity}.main-menu .overlay.transition{-webkit-transition:opacity 0.2s ease-in-out;transition:opacity 0.2s ease-in-out}.main-menu .overlay.hidden{opacity:0}.main-menu ul{margin:0;padding:0}.main-menu li{display:block;margin:0;padding:0}.main-menu .menu-item{padding:0 16px;width:100%;height:48px;box-sizing:border-box;display:-webkit-flex;display:flex;-webkit-align-items:center;align-items:center}.main-menu .menu-item:link,.main-menu .menu-item:visited{color:inherit;text-decoration:none}.main-menu .menu-item:focus,.main-menu .menu-item:hover{outline:none;background:rgba(0,0,0,0.1)}.main-menu .menu-item .icon{width:24px;height:24px;opacity:0.54;margin-right:32px;-webkit-flex:none;flex:none}.main-menu .menu-item .spinner{-webkit-flex:none;flex:none;margin:0 0 0 auto}.main-menu .menu-item .menu-item-text{margin-right:28px;overflow:hidden;text-overflow:ellipsis}.main-menu .menu-input{cursor:pointer}.main-menu .menu-input .input-area{position:relative;white-space:nowrap}.main-menu .menu-input .label-txt{position:absolute;left:0;top:0}.main-menu .menu-input textarea,.main-menu .menu-input input{display:block;font:inherit;border:none;background:none;padding:0;margin:0;opacity:0;cursor:inherit;resize:none;width:100%;height:1.3em;overflow:hidden}.main-menu .menu-input textarea:focus,.main-menu .menu-input input:focus{outline:none;opacity:1}.main-menu .menu-input textarea:focus+.label-txt,.main-menu .menu-input input:focus+.label-txt{opacity:0;pointer-events:none}.main-menu .load-file-input{display:none}.menu-footer-notes{padding:0 16px;margin-top:auto;text-align:center;font-size:0.9rem;color:#8E8E8E}.menu-footer-notes a:link,.menu-footer-notes a:visited{color:inherit;text-decoration:underline}.menu-footer-notes a:hover,.menu-footer-notes a:active{color:#000}.preloader{position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.7);z-index:3;color:#fff;opacity:0;font-family:sans-serif;display:-webkit-flex;display:flex;-webkit-flex-flow:column;flex-flow:column;-webkit-align-items:center;align-items:center;-webkit-justify-content:center;justify-content:center;-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out}.preloader.active{opacity:1}.preloader.active .spinner{display:block}.preloader .spinner{display:none;border-color:#fff}.unbutton{display:inline-block;background:none;border:none;padding:0;margin:0;font:inherit;cursor:pointer;white-space:nowrap}.toolbar,.main,.drop-overlay{display:none}
/*# sourceMappingURL=head.css.map */</style><script>location.port&&"80"!=location.port||"https:"==location.protocol||(location.protocol="https:"),window.ga=window.ga||function(){(ga.q=ga.q||[]).push(arguments)},ga.l=+new Date,ga("create","UA-58850134-1","auto"),ga("send","pageview"),window.version="1.12.0"</script><link rel=manifest href=manifest.json><link rel=apple-touch-icon-precomposed href=imgs/icon.png><link rel=icon href=imgs/icon.png><meta name=apple-mobile-web-app-capable content=yes><meta name=application-name content=SVGOMG></head><body><div class=app-output><div class=main-menu><div class=overlay></div><nav class=menu><ul><li><div tabindex=0 role=button class="load-file unbutton menu-item needsclick"><svg viewBox="0 0 24 24" class=icon><path d="M9 16h6v-6h4l-7-7-7 7h4zm-4 2h14v2H5z"/></svg> <span class=menu-item-text>Open SVG</span></div><input type=file class=load-file-input accept=.svg></li><li><label class="menu-input menu-item"><svg viewBox="0 0 24 24" class=icon><path d="M19 2h-4.2C14.4.8 13.3 0 12 0c-1.3 0-2.4.8-2.8 2H5C4 2 3 3 3 4v16c0 1 1 2 2 2h14c1 0 2-1 2-2V4c0-1-1-2-2-2zm-7 0c.6 0 1 .5 1 1s-.5 1-1 1-1-.5-1-1 .5-1 1-1zm7 18H5V4h2v3h10V4h2v16z"/></svg><div class=input-area><textarea class=paste-input></textarea> <span class=label-txt>Paste markup</span></div></label></li><li><div tabindex=0 role=button class="load-demo unbutton menu-item"><svg viewBox="0 0 24 24" class=icon><path d="M18.92 6c-.2-.58-.76-1-1.42-1h-11c-.66 0-1.2.42-1.42 1L3 12v8c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-1h12v1c0 .55.45 1 1 1h1c.55 0 1-.45 1-1v-8l-2.08-6zM6.5 16c-.83 0-1.5-.67-1.5-1.5S5.67 13 6.5 13s1.5.67 1.5 1.5S7.33 16 6.5 16zm11 0c-.83 0-1.5-.67-1.5-1.5s.67-1.5 1.5-1.5 1.5.67 1.5 1.5-.67 1.5-1.5 1.5zM5 11l1.5-4.5h11L19 11H5z"/></svg> <span class=menu-item-text>Demo</span></div></li><li><a href=https://github.com/jakearchibald/svgomg class=menu-item><svg viewBox="0 0 512 512" class=icon><path d="M7 266.8c22.6-5.7 53.3-13.4 107-14.8-1.4-3-2.8-6-4-9.2-21-.2-85.4 2.8-107.5 8.2H2c-.6 0-1.3-.4-1.5-1.2-.2-1 .4-1.8 1.3-2 21.8-5.4 84.8-8.4 107-8.3-5-14.8-7.2-31.7-7.2-50.6 0-33.6 10.5-46.2 24.5-64-10.6-38.3 4-64.4 4-64.4s22.5-4.7 65 25.8c23.2-9.8 84.7-10.7 113.8-2.2 18-11.8 50.6-28.5 63.8-23.8 3.6 5.7 11.3 22.5 4.7 59.3 4.5 8 27.7 25.3 27.8 74-.2 18-2 33-5.6 45.8 55.6-.4 88.2 4 110.8 8.3.8.2 1.4 1 1.3 2-.2.7-1 1.3-1.6 1.3h-.5c-22.4-4-55.2-8.7-111-8.2-1 3.3-2 6.4-3.3 9.3 19 .7 71.2 2.8 113.8 15.8 1 .3 1.4 1.2 1 2 0 .8-.7 1.2-1.4 1.2h-.5c-43-13.2-96.5-15-114.2-15.6-15.4 34-47 46.6-98.3 51.8 16.6 10.5 21.3 23.6 21.3 59 0 35.5-.5 40.2-.3 48.4 0 13.4 19.7 19.8 19 24-.7 4.4-16.4 3.7-23.7 1-20.8-7-18.7-24.4-18.7-24.4l-.6-47.4s1.4-25.5-8-25.5V420c0 16.8 11.8 22 11.8 28 0 10.8-21.6-1-28.2-7.6-10-10-9-31.7-8.7-48.8.2-16.4-.2-52.5-.2-52.5l-6.8.3s3 78.7-3.6 93c-8.3 18.4-33.5 24.8-33.5 16.4 0-5.7 6.3-4 9.8-16.5 3-10.8 2-91 2-91s-8.2 4.8-8.2 19.8l-.2 57.8c0 14.8-20.8 23-31 23-5 0-11.3 0-11.3-2.8 0-6.8 19.2-10.8 19.2-25l-.3-43.8s-9.7 1.7-23.4 1.7c-34.6 0-45.6-22.2-50.8-34.6-6.8-16-15.6-23.7-25-29.7-5.7-3.7-7-8-.4-9.4 30.7-5.7 38.5 34.8 59 41.3 14.6 4.6 33.4 2.6 42.7-3.5 1.4-12.3 10.3-23 17.7-28.6-52-5-83-23-99-52-54.4 1.2-85.3 9-108 14.6L3 271.2h-.4c-.8 0-1.5-.5-1.6-1.2-.3-1 .3-1.8 1.2-2l4.8-1.2z"/></svg> <span class=menu-item-text>Contribute</span></a></li><li><a href=https://github.com/jakearchibald/svgomg/blob/master/README.md class=menu-item><svg viewBox="0 0 24 24" class=icon><path d="M12 2C6.5 2 2 6.5 2 12s4.5 10 10 10 10-4.5 10-10S17.5 2 12 2zm1 15h-2v-6h2v6zm0-8h-2V7h2v2z"/></svg> <span class=menu-item-text>About</span></a></li></ul><div class=menu-extra></div><div class=menu-footer-notes><p>Powered by the incredible <a href=https://github.com/svg/svgo>SVGO</a></p></div></nav></div><div class=toolbar><div class=menu-toolbar-item><button class="unbutton menu-btn"><svg viewBox="0 0 24 24"><title>Menu</title><path d="M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z"/></svg></button></div><form class="material-tabs view-toggler"><label class=material-tab><input type=radio name=output value=image checked> <span class=selected></span> Image</label> <label class=material-tab><input type=radio name=output value=code> <span class=selected></span> Markup</label></form></div><div class=main><div class=output><div class=action-button-container><div class=minor-action-container></div><div class=results-container></div></div></div><div class=settings><div class=results-container-mobile></div><div class=settings-scroller><section class=global><h1 class=settings-sub-heading>Global settings</h1><div><label class=setting-item-toggle><input type=checkbox name=original> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Show original</label></div><div><label class=setting-item-toggle><input type=checkbox name=gzip checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Compare gzipped</label></div><div><label class=setting-item-toggle><input type=checkbox name=pretty> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Prettify markup</label></div><div><label class=setting-item-range><div class=label-text>Precision</div><input type=range min=0 max=8 step=1 value=3 name=floatPrecision></label></div></section><section class=plugins><h1 class=settings-sub-heading>Features</h1><div><label class=setting-item-toggle><input type=checkbox name=removeDoctype checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove doctype</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeXMLProcInst checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove XML instructions</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeComments checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove comments</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeMetadata checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove &lt;metadata></label></div><div><label class=setting-item-toggle><input type=checkbox name=removeXMLNS> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove xmlns</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeEditorsNSData checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove editor data</label></div><div><label class=setting-item-toggle><input type=checkbox name=cleanupAttrs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Cleanup attribute whitespace</label></div><div><label class=setting-item-toggle><input type=checkbox name=inlineStyles checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Inline styles</label></div><div><label class=setting-item-toggle><input type=checkbox name=minifyStyles checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Minify styles</label></div><div><label class=setting-item-toggle><input type=checkbox name=convertStyleToAttrs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Style to attributes</label></div><div><label class=setting-item-toggle><input type=checkbox name=cleanupIDs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Clean IDs</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeRasterImages> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove raster images</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeUselessDefs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove unused defs</label></div><div><label class=setting-item-toggle><input type=checkbox name=cleanupNumericValues checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Round/rewrite numbers</label></div><div><label class=setting-item-toggle><input type=checkbox name=cleanupListOfValues> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Round/rewrite number lists</label></div><div><label class=setting-item-toggle><input type=checkbox name=convertColors checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Minify colours</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeUnknownsAndDefaults checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove unknowns & defaults</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeNonInheritableGroupAttrs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove unneeded group attrs</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeUselessStrokeAndFill checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove useless stroke & fill</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeViewBox checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove viewBox</label></div><div><label class=setting-item-toggle><input type=checkbox name=cleanupEnableBackground checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove/tidy enable-background</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeHiddenElems checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove hidden elements</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeEmptyText checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove empty text</label></div><div><label class=setting-item-toggle><input type=checkbox name=convertShapeToPath checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Shapes to (smaller) paths</label></div><div><label class=setting-item-toggle><input type=checkbox name=moveElemsAttrsToGroup checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Move attrs to parent group</label></div><div><label class=setting-item-toggle><input type=checkbox name=moveGroupAttrsToElems checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Move group attrs to elements</label></div><div><label class=setting-item-toggle><input type=checkbox name=collapseGroups checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Collapse useless groups</label></div><div><label class=setting-item-toggle><input type=checkbox name=convertPathData checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Round/rewrite paths</label></div><div><label class=setting-item-toggle><input type=checkbox name=convertTransform checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Round/rewrite transforms</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeEmptyAttrs checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove empty attrs</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeEmptyContainers checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove empty containers</label></div><div><label class=setting-item-toggle><input type=checkbox name=mergePaths checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Merge paths</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeUnusedNS checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove unused namespaces</label></div><div><label class=setting-item-toggle><input type=checkbox name=sortAttrs> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Sort attrs</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeTitle checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove &lt;title></label></div><div><label class=setting-item-toggle><input type=checkbox name=removeDesc checked> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove &lt;desc></label></div><div><label class=setting-item-toggle><input type=checkbox name=removeDimensions> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Prefer viewBox to width/height</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeStyleElement> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove style elements</label></div><div><label class=setting-item-toggle><input type=checkbox name=removeScriptElement> <span class=material-switch><span class=track></span> <span class=handle></span> </span>Remove script elements</label></div></section><div class=setting-reset-row><button class="unbutton setting-reset">Reset all</button></div></div></div></div><div class=preloader><div class=spinner><div class=spinner-container><div class=spinner-layer><div class="circle-clipper left"><div class=circle></div></div><div class=gap-patch><div class=circle></div></div><div class="circle-clipper right"><div class=circle></div></div></div></div></div><p>Sorry, wasn't ready…</p></div><script>document.querySelector(".preloader").addEventListener("click",function(e){ga("send","event","preloader","clicked"),this.className="preloader active"}),requestAnimationFrame(function(){requestAnimationFrame(function(){["css/all.css","https://fonts.googleapis.com/css?family=Roboto:400,700|Inconsolata"].forEach(function(e){var t=document.createElement("link");t.rel="stylesheet",t.crossorigin=!0,t.href=e,document.head.appendChild(t)}),["js/page.js","https://www.google-analytics.com/analytics.js"].forEach(function(e){var t=document.createElement("script");t.src=e,document.head.appendChild(t)})})})</script></div></body></html>