“切图”是指通过测量设计稿,从设计稿中提取图片等方式为页面开发提供支持的过程。

整个“切图”过程主要分为以下五个主要步骤:

  1. 分析设计图;
  2. 测量元素;
  3. 提取图片;
  4. 保存图片;
  5. 图片优化与合并;

1.分析设计图

以前我做练习时,往往是拿起一份PSD设计稿,大致看上两眼就开始边敲代码边切了,后来踩了一些坑才意识到这样的做法效率低下。有时代码敲着敲着会突然发现,哎?这里有一个下拉菜单?或者有时发现,哎?这里是不是可以重用之前的代码?通常这样的后知后觉都令人追悔莫及,所以慢慢也要求自己事先要留个心眼。所以第一步“分析设计图”我认为还可以分为以下三个部分:

    • 仔细浏览设计图,考虑网页的整体结构(在这里心中就可以预想页面将来的编辑方式,划分为几个区域?大体如何实现?);
    • 仔细查找页面各部分是否有隐藏下拉菜单,hover效果等隐藏设计(好的设计师应对此提前在说明文档中注明);
    • 观察页面结构,考虑代码重用的可能;

2.测量元素

切图主要测量的对象有:文字大小图片间距颜色;这里以PS工具为例,基本上前三者都可以使用矩形工具(M)完成,后者主要使用吸管工具(I)。一般来说,在参考线,标尺具备的前提下,图片越放大,测量精度越高。

3.提取图片

所提取的图片大致可以分为直接在页面上呈现的内容型图片,和作为背景使用的修饰性图片,对于前者直接切下来保存就好,而对于后者则需要分离其前景图案,文字,之后再切下保存。对于比较特别的修饰性图片,可以只切其一部分,使用CSS的repeat属性进行重复以节约存储空间,提高页面加载速度;具体步骤如下:

    • 隐藏文字只留背景;这里又分为两种情况,第一种是文字为独立图层,那么只需使该图层不可见即可,第二种为图片与文字融为一体,这种情况下基本的思路是平铺遮盖,但是根据背景性质不同分为可拉伸与不可拉伸两种状况,前者需使用矩形选框+自由变换拉伸遮盖,后者使用矩形选框+Alt+移动工具移动遮盖
    • 使用移动工具(V)选中所需图层(若有多个图层则复选后右键合并图层Ctrl+E);
    • 在所选图层上右键“复制图层到新文件”;
    • 裁切新文件画布大小;

这种方法的缺陷在于步骤太多,操作不便,而且所切图像新建画布有时太大,因此我通常使用另外一种方法,这种方法对视设计稿大小对机器性能有一定要求:

    • 矩形选框选好目标对象;
    • 合并可见图层(Ctrl+Shift+E);
    • 复制所选对象(Ctrl+C),新建图层(Ctrl+N),粘贴所选对象(Ctrl+V);

这种方法的优点在于图片要多大切多大,省去了裁切画布的麻烦,而且快捷键操作效率高,缺点则在于要用矩形选框框住目标对象,而且文件较大时,合并所有可见图层较慢。

4.图片保存

保存需要考虑保存方式图片格式图片命名三个部分。

保存方式是指页面图片选定后如何选择图层保存的问题,是逐一保存?还是使用Sprite技术进行合并?,需要提前规划好,可以省去后面很多合并图片的时间;

图片格式则主要指要根据所需保存图片的类型选择相应的图片格式,我们通常用PNG格式用来保存有透明图像,用JPG格式保存颜色丰满图像,用GIF格式保存动图;

搞定前两步,最后一步便是对图片的命名,不要小看图像的命名,使用清晰,准确,描述性的名称命名图像(例如:“.header__banner”)可以节省后期图片变更时查找图片所耗费的时间。

5.图片优化与合并

图片优化与合并是两回事,优化是指对图片进行压缩,使其既满足用户视觉需要,文件大小又尽可能的小;而图片合并是指,使用“图片精灵”技术,将多张图片(通常是图标)合并为一张图片,以节省加载次数。

但这样做的则弊端在于,为了使用CSS背景定位,必须要在HTML中加入许多无语义的容器标签,但相较于页面加载时间的提升,这点损失也是微不足道的。

以上。

前端初级技能No.1 [切图]的更多相关文章

  1. 前端开发使用Photoshop切图详细步骤

    切图的主要目的是从设计师提供的psd中获取网页制作所要的资源 一.界面设置 1. 新建文件,调整界面大小,背景设置为透明 2. 自动选择,把组切换为图层 3. 添加窗口内容,一共四项:图层.历史纪录. ...

  2. 前端菜鸟起飞之学会ps切图

    由于之前只顾着追求效率,没有学习过PS,但其实这是前端开发人员需要学会的技能之一,曾经看过一个大佬的前端经验分享说他在招聘时遇到不会切图的会直接pass掉,可见前端开发人员学会切图是多么重要.通过观看 ...

  3. Photoshop如何实现UI自动切图?

    切图严格来说并不是UI设计师的工作, 而是前端工程师的工作,指的是将UI设计师的设计(大部分为photoshop创建的PSD文件)转化为界面(网页或窗体等)所需要资源的过程.切图是衔接UI设计和应用程 ...

  4. 利用PS自动切图、支持svg且支持icoMoon——再也不用四处去转格式了

    今天想导出svg格式的图片支持webFont,结果AI打不开了,文件好像损坏了,于是就想办法在PS里面导出. 网上搜索到一篇文章,腾讯的 http://isux.tencent.com/ps-phot ...

  5. 那些令人迷惑的名词:切图/H5/XML/REST

    长时间以来对一些名词感到很困惑,不明白其具体指什么,在此记录一下. 一.切图 1.1 原先理解 从字面意思理解,切图是指将一张大的图切割成很多张小的图片.最早(视频教程网或者我要自学网)看到的视频也是 ...

  6. 使用PHP写了一个图片分割等份工具,便于前台页面切图时使用。

    目的: 由于网站更新活动较频繁,其大多数以静态图片为主,设计人员在除了设计图后都要给前端制作人员再次切图从而达到页面加载图片缓慢的问题,为了减少工作量做了该工具. 功能: 上传一张图,将其分割成指定等 ...

  7. 前端工程师技能之photoshop巧用系列第三篇——切图篇

    × 目录 [1]切图信息 [2]切图步骤 [3]实战 前面的话 前端工程师除了使用photoshop进行测量之外,更重要的是要使用该软件进行切图.本文是photoshop巧用系列的第三篇——切图篇 切 ...

  8. ps切图抠图详解-web前端(转)

    网页设计在技术层面上,第一步是美工做出网页效果图,第二步就是网页前端进行网页切图.网页切图工具常用的有fireworks.PS,这里使用PS进行网页切图. 我们通过设计稿,得到我们想要的产出物(如.p ...

  9. 做一个会PS切图的前端开发

    系列链接 做一个会使用PS的前端开发 做一个会PS切图的前端开发 切图方法分类 PhotoShop从CS版本演变到现在的CC版本,切图功能发生了比较大的变化,我们可以把PhotoShop CS版本时的 ...

随机推荐

  1. Groovy中的脚本与类

    包名 当你在groovy中定义类的时候需要指定包名,这和java中类似不多介绍. 导入 groovy中的导入也跟java类似,有一下五种: 默认导入 groovy默认导入了一下几个包和类: impor ...

  2. bootstrap datetimepicker 日期插件超详细使用方法

    日期时间选择器 目前,bootstrap有两种日历.datepicker和datetimepicker,后者是前者的拓展. Bootstrap日期和时间组件: 使用示例: 从左到右依次是十年视图.年视 ...

  3. 修改mysql root的秘密

    修改mysql root的秘密 ');

  4. Elasticsearch提示low disk watermark [85%] exceeded on [UTyrLH40Q9uIzHzX-yMFXg][Sonofelice][/Users/baidu/Documents/work/soft/data/nodes/0] free: 15.2gb[13.4%], replicas will not be assigned to this node

    mac本地启动es之后发现运行一段时间一分钟就能打印好几条info日志: [--13T10::,][INFO ][o.e.c.r.a.DiskThresholdMonitor] [Sonofelice ...

  5. Linux下桥接模式详解一

    注册博客园已经好长时间,一直以来也没有在上面写过文章,都是随意的记录在了未知笔记上,今天开始本着分享和学习的精神想把之前总结的笔记逐步分享到博客园,和大家一起学习,一起进步吧! 2016-09-20  ...

  6. 为你的CSDN博客添加CNZZ流量统计功能

    一.流量统计介绍 流量统计是指通过各种科学的方式,准确的纪录来访某一页面的访问者的流量信息,目前而言,必须具备可以统计. 1.简介 统计独立的访问者数量(独立用户.独立访客): 可以统计独立的IP地址 ...

  7. oracle入门(8)——实战:支持可变长参数、多种条件、多个参数排序、分页的存储过程查询组件

    [本文介绍] 学了好几天,由于项目需要,忙活了两天,写出了个小组件,不过现在还只能支持单表操作.也没考虑算法上的优化,查询速度要比hibernate只快了一点点,可能是不涉及多表查询的缘故吧,多表的情 ...

  8. 18.让sublime text3支持Vue语法高亮显示

    1.准备语法高亮插件vue-syntax-highlight. 下载地址: https://github.com/vuejs/vue-syntax-highlight 下载页面并下载: 解开压缩包vu ...

  9. bat命令运行java程序

    注意空格 本文主要介绍在window下bat批处理文件调用java的方法. @echo off echo 正在加密,请稍后....echo path:%~dp0 set base=%~dp0 set ...

  10. PAT 1078 Hashing[一般][二次探查法]

    1078 Hashing (25 分) The task of this problem is simple: insert a sequence of distinct positive integ ...