关于Surface的一些概念

作者&投稿:豆卢盛 (若有异议请与网页底部的电邮联系)
~ 英文来源: http://stackoverflow.com/questions/4576909/understanding-canvas-and-surface-concepts

Surface

一个Surface就是一个对象,该对象持有一群像素(pixels),这些像素是要被组合到一起显示到屏幕上的。你在手机屏幕上看到的每一个window(如对话框、全屏的activity、状态栏)都有唯一一个自己的surface,window将自己的内容(content)绘制到该surface中。Surface Flinger根据各个surface在Z轴上的顺序(Z-order)将它们渲染到最终的显示屏上。

一个surface通常有两个缓冲区以实现双缓冲绘制:当应用正在一个缓冲区中绘制自己下一个UI状态时,Surface Flinger可以将另一个缓冲区中的数据合成显示到屏幕上,而不用等待应用绘制完成。

Window

一个window恰如你在计算机中看到的一个window。它拥有唯一一个用以绘制自己的内容的surface。应用通过 Window Manager创建一个window,Window Manager 为每一个window创建一个surface,并把该surface传递给应用以便应用在上面绘制。应用可以在surface上任意进行绘制。对于Window Manager来说,surface就是一个不透明的矩形而已。

View

一个view就是一个window中可交互的UI元素。每个window都有唯一一个附着于它的view hierarchy(这个还是不翻更好理解吧)。该view hierarchy提供了window所有的行为。当一个window需要重绘时(比如一个view 通过invalidate方法使自己失效了)就要进入到window的surface中去完成了。首先,该window的surface会被锁定,锁定的同时会返回一个canvas,该canvas可被用来在surface上绘制内容。该canvas会沿着view hierarchy遍历传递给每一个view,好让每个view绘制自己的UI部分。当这个过程完成时,surface将会被解锁和提交(posted),提交的目的是将刚刚绘制好的缓冲区交换到前台,然后让Surface Flinger利用该缓冲区的数据刷新window的显示。

SurfaceView

一个SurfaceView就是一个被特殊实现的View,它拥有自己专门的一个surface,以便让应用直接在里面绘制内容。该SurfaceView是独立于其所属window的view hierarchy的,view hierarchy中的view们共享window那一个surface。SurfaceView 的工作原理比你想的要简单——SurfaceView所做的全部就是要求Window Manager创建一个window,并告诉Window Manager所创建的window的Z轴顺序(Z-order),这个Z轴顺序可以帮助Window Manager决定将新建的window置于SurfaceView所属window的前面还是后面。然后,Window Manager会将新建的window放置到SurfaceView在所属window中的位置。如果新建window在SurfaceView所属window后面,SurfaceView会将它在所属window中占据的部分变透明,以便让后面的window显示出来。

Bitmap

一个Bitmap只是一些像素数据的接口。Bitmap中的像素数据所占内存空间既可以在直接创建Bitmap时分配,也可以创建Bitmap后将它指向一块像素数据空间,比如,当把一个canvas对象链接(hook up)到一个surface进行绘制时,就会创建一个Bitmap指向surface当前正在绘制的缓冲区。

补充:

SurfaceHolder

前面说到Surface持有一块像素,那么我们该如何操作这些像素,或者说是如何填充他们 。其实我们我们无法直接操作Surface只能通过SurfaceHolder这个接口来获取和操作Surface。 SurfaceHolder中提供了一些lockCanvas(),获取一个Canvas对象,并锁定之。所得到的Canvas对象,其实就是Surface中一个成员。加锁的目的其实就是为了在绘制的过程中, Surface中的数据不会被改变。lockCanvas是为了防止同一时刻多个线程对同一canvas写入。

Canvas

画布,一个可以直接操作(填充)像素的地方,有点抽象概念 ,实际上每一个画布底部可能都是一个bitmap,前面说到bitmap代表的就是像素数据,而Canvas需要这么一块像素数据才能执行一些绘制(填充)操作;Canvas包含许多填充像素的方法 canvas.drawXXX,当然画布除外 还有一个很重要的东西就是画笔paint,填充像素其实就是改变每一个像素点的颜色值,而画笔的属性则决定者每一个像素的颜色;


surface4售后电话
surface4售后电话:400-820-3800。Surface 4是微软公司于2015年10月6日在美国(北京时间10月6日)发布的平板电脑;于2015年10月26日上市。Surface 4采用了12.3英寸PixelSense显示屏,机身长度为292.1毫米,宽度为201.42毫米,厚度为8.45毫米,重量为766克;配有银色一种机身颜色。Surface 4搭载了...

什么是Surface?
自2012年以来,微软公司陆续发布了多个Surface平板的版本:• Surface RT: Surface RT 最早于2012年发布。它是基于ARM架构的,运行最初的Windows RT操作系统。Surface RT 外观采用后壳和显示屏玻璃融为一体的设计,并配置了Nvidia Tegra 3处理器和2GB内存。• Surface Pro: Surface Pro 是...

surface产品简介
在2012年6月19日,微软推出了Surface,一款集x86和ARM架构于一体的平板电脑。x86版本搭载了英特尔最新的酷睿i5处理器,运行Windows 8 Pro系统,而ARM版本则由nVIDIA负责制造,搭载Windows RT系统,屏幕比例为16:9。同年,Windows Phone 8采用与Windows 8相同的NT内核,并内置诺基亚地图,进一步扩展了微软生态...

surface rt和surface什么区别啊
一、指代不同 1、surface rt:是微软推出的第一款平板设备,也是微软全新操作系统Windows RT的硬件寄托之一。2、surface:是美国微软公司推出的全新硬件品牌,微软公司于2012年6月19日发布了Surface系列平板电脑。二、操作系统不同 1、surface rt:搭载的是微软在Windows 8的基础上,专门为ARM架构开发的...

Surface RT必须了解的小细节
系统:类似于双系统运行的操作方式微软为了让已经习惯了Windows的用户比较容易上手,在Windows RT操作系统中也内置了类似于Windows 7桌面的启动器,这就让微软Surface RT的使用者可以自由的在传统桌面和新桌面之间自由切换,以选择自己更为习惯的操作方式。 通过使用发现,Surface RT在实际操作时,传统的微软桌面并不是简单...

微软2013是什么型号笔记本
SurfacePro2。根据查询微软官网得知,2013是SurfacePro2型号笔记本,是微软于2013年9月23日晚间发布的一款全新二合一笔记本电脑,是SurfacePro的第二代产品,硬件上搭载Haswell平台英特尔第四代智能酷睿处理器,运行WindowsPro8.1操作系统,同时增加了Dolby扬声器。

suface go2相当于pro几代?
suface go2相当于是Surface Pro系列的入门产品。轻度办公考虑Surface Go 2。Surface Go 2相对而言比较适合轻度办公人群,比如说不需要使用重度软件的白领、在校学生。以3000多元的价格,买到一台能Office、能PS、能QQ、能微信、能邮件、能上网的10英寸便携设备,对这部分用户来说是合理的。配置 Surface Go...

Surface Pro 4的Surface Pen有哪些新特性?
Dock扩展坞方面,支持4个USB 3.0接口,两个4K传输的DP接口,以及网口,连接性得到了提升。在定价上,微软给出了起售价899美元,折合人民币约5700元,但这个价格并不包含Surface Pen、Type Cover和Dock扩展坞等附件。Surface Pro 4的预售将于明日启动,正式上市日期定在本月26日,期待已久的用户可以...

微软surface售后网点
在中国,例如,微软在北京、上海、广州等大城市均设有售后服务中心,这些中心由专业的技术支持团队组成,他们经过严格的培训,具备丰富的技术知识和服务经验,能够迅速有效地解决用户在使用Surface产品过程中遇到的各种问题。微软Surface售后网点提供的服务内容非常全面,包括但不限于硬件检修、软件更新、系统恢复...

surface什么意思中文翻译
作为动词,"surface"有浮出水面的含义,比如"Back in Britain, things appear, on the surface, simpler"(而在英国国内,事情表面上看来要简单一些),这里的"on the surface"指的是表面上的、直观的观察。最后,"surface"还可以用来形容事物的肤浅或者表面的特征,表示事情仅限于表面层次,没有深入...

鹤山市19847942036: 平面计算机是什么? -
涂玲贝诺: 微软公司一款外形酷似咖啡桌的新型电脑.它是一台平面触摸式电脑,无需鼠标和键盘你就能快速、交互的操作这台电脑.该计算机所被命名为“Surface” (平面计算机) ,它其实是一个表面安装了30英寸显示器的工作平台.它含有5个摄像...

鹤山市19847942036: 比较surface和ipad的区别 -
涂玲贝诺: 比较surface和ipad的区别 1、产品功能:都是平板电脑,用于上网、娱乐.学习.而Surface兼容W7使用程序,运行完整的Office套件,在 OneNote 等应用程序中画图和做笔记,像使用纸张一样使用,并且多了usb接口、触控笔、D型HDMI接口 ...

鹤山市19847942036: 微软最早的平板电脑 - 第一代微软平板
涂玲贝诺: 1. 第一代微软平板平板电脑的概念最早是由微软公司于2002年秋季提出的,但由于当时的硬件技术水平还未成熟,缺乏相关适合平板电脑运用的系统软件,没能得到推广...

鹤山市19847942036: 什么是surfaceview?和surface有区别吗 -
涂玲贝诺: Surface: 处理被屏幕排序的原生的buffer,Android中的Surface就是一个用来画图形(graphics)或图像(image)的地方,对于View及其子类,都是画在Surface上,各Surface对象通过Surfaceflinger合成到frameBuffer,每个Surface都是双缓冲...

鹤山市19847942036: workbench中surface和face的区别 -
涂玲贝诺: surface指的是面体的面,是概念建模里面的线体、面体里面那个面;face指的是实体的面,是点、线、面、体这四种图元中那个面,是具体某个零件上的一面.

鹤山市19847942036: 表面张力的定义是什么? -
涂玲贝诺: 中文名称:表面张力 英文名称:surface tension 定义:液体表面层由于分子引力不均衡而产生的沿表面作用于任一界线上的张力. 表面张力是一种物理效应,它使得液体的表面总是试图获得最小的、光滑的面积,就好像它是一层弹性的薄膜一...

鹤山市19847942036: Maya中Surface建模和Polygon建模有什么区别? -
涂玲贝诺: 1. 最大的区别就是Surface建模主要基于Nurbs,Nurbs是一种高次函数.所以较少的等参线也能做出平滑的效果.Poly建模的..你这样理解吧,就是理论上可以用无数个足够小的多边形构成任一复杂的模型.事实上也是这样,poly建模已经是现在建模的首选了. 2. nurbs从创建那一刻开始就已经有了自己固定的UV,而poly模型就不一样了,建模和展UV是两个活了.3. 要活学活用,有时候想不到怎么用poly建出一个模型的画,就用nurbs画曲线然后慢慢的调整.

鹤山市19847942036: surface finish是什么意思 -
涂玲贝诺: surface finish 英 [ˈsə:fis ˈfiniʃ] 美 [ˈsɚfəs ˈfɪnɪʃ] 表面加工,表面抛光 表面处理;表面光洁度;表面粗糙度;表面修饰 双语例句1. The grinding machine raises the precision of the workpiece and improves its surface finish. 磨床可以提...

鹤山市19847942036: 我想问一下微软的surface2好用吗?有人说surface这样的就是概念产品,性能差的很,是吗?请一个专业的人给我解释一下,最好能介绍一下surface的各项性能以及好处,PC平板二合一到底好用吗?
涂玲贝诺:优点:1、Win8系统,办公性能强 2、SSD固态硬盘 3、显示效果非常好 4、支持物理键盘扩展 缺点:1、不够便携 2、分量较重,持久易累 3、接口不够丰富 .

鹤山市19847942036: 平板电脑的优点与缺点?与台式电脑有什么区别? -
涂玲贝诺: 1. 平板电脑优点: 平板电脑在外观上,具有与众不同的特点.有的就像一个单独的液晶显示屏,只是比一般的显示屏要厚一些,在上面配置了硬盘等必要的硬件设备.平板电脑的优点之一便携移动,它像笔记本电脑一样体积小而轻,可以随时...

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网