重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
从设计图切图得到了12个小图标,是按钮的两种状态,然后我就寻思着把他们拼成一张sprite图片.
成都创新互联公司专注于企业成都全网营销推广、网站重做改版、上城网站定制设计、自适应品牌网站建设、H5高端网站建设、商城网站建设、集团公司官网建设、外贸营销网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为上城等各大城市提供网站开发制作服务。之前用过gulp的sprite插件,但这次我不想搞的太隆重.拼图我知道有个很好用的命令行工具 GraphicsMagick 及配套的nodejs包gm
首先说下我要拼的图片,我打算将正常状态作为第1行,激活状态作为第2行.这样可以少计算一些background-position.
折腾过程比较痛苦,本来我打算看一下GraphicsMagick与gm的官方文档,结果好多生单词,最后还是放弃了.下面说答案吧:
总的来说有两种方法,
1.使用gm包的append+adjoin方法
这个方法有缺点,就是不能方便的排序成我想要的这种布局.用adjoin我实际上拼了3次图,才最终得到sprite.参考代码如下:
gm('nav1_1.png') .append('nav2_1.png','nav3_1.png','nav4_1.png','nav5_1.png','nav6_1.png', true) .adjoin().write('./result.png', function(err) { console.log(err); }); gm('nav1_0.png') .append('nav2_0.png','nav3_0.png','nav4_0.png','nav5_0.png','nav6_0.png', true) .adjoin().write('./result1.png', function(err) { console.log(err); }); gm('result1.png').append('result.png').adjoin() .write('nav-icons.png', (err, data) => { if(err) console.error(err); console.log(data); })
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。