gui
文章平均质量分 77
yongcai1
这个作者很懒,什么都没留下…
展开
-
字体管理
3.1 文本输出文本输出比图像输出涉及更多的内容和概念。本小节介绍文本输出的基本概念和Windows上文本输出的两种基本方式及其模拟实现方法。下一节“字体管理”是本节内容的一个顺延,也是文本输出所依赖的重要内容。3.1.1 基本概念在介绍Windows的文本输出功能及其模拟方法之前,这里先介绍一下一些文本输出的基本概念。这些概念是与具体的平台无关的。了解这些背景知识将有助于后面的功转载 2013-02-17 17:29:34 · 946 阅读 · 0 评论 -
DirectFB 源码解读之字体-1
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 我们在DirectFB初始化中了解到gfx driver, input driver等都是在DirectFBCreate()时完成初始化,也就是说在用户真正使用之前,这些driver已经准备就绪。 而字体(font)与此不同,只有用户明确转载 2013-03-21 16:23:54 · 1755 阅读 · 0 评论 -
DirectFB 源码解读之gfx硬件加速如何工作
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 刚刚说了gfx core 及gfx driver 的初始化,有必要趁热打铁看看gfx硬件加速的工作流程。 我们先看一下用户是如何调DirectFB来画线的,一般流程如下: · DirectFBInit( &argc, &ar转载 2013-03-21 16:19:45 · 2608 阅读 · 0 评论 -
DirectFB 源码解读之初始化-4
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 上一节说到dfb_core_initialize()将完成各个核心部件的初始化。DFB中,将以下几个方面作为core part,即核心部件,它们是: clipboard:管理剪切板,DFB内部维护一块共享内存作为剪切板,并提供了Ge转载 2013-03-21 16:14:16 · 1074 阅读 · 0 评论 -
DirectFB 源码解读之初始化-3
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 继续dfb_core_create()的源码之旅,接着调用的是direct_find_best_memcpy(),它的作用就是寻找性能最优的memory copy 的实现, 不同的平台可能有不同的memcpy的优化, 用户在编译DFB的时候转载 2013-03-21 15:50:41 · 911 阅读 · 0 评论 -
DirectFB 源码解读之初始化-1
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) DirectFB就是一个全能系统,麻雀虽小五脏俱全。DirecttFB源码,可以了解很多方面的技术, 包括Framebuffer, Graphics Accelerate Card,鼠标及键盘等外设的事件处理,Font, Graphics Draw转载 2013-03-21 15:46:07 · 2182 阅读 · 0 评论 -
DirectFB 源码解读之字体-2
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 字体关联 字体与surface的关联是在SetFont中完成的。其过程很简单,就是将字体对象记录在surface的一个指针中,以后该surface上画字符,就会找到相应的字体对象。 需要说明的是,一个字体对象可以同时属于多个转载 2013-03-21 16:24:57 · 963 阅读 · 0 评论 -
DirectFB 源码解读之双缓存实现
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 双缓存是画图时一个常用的技术,它的基本原理是在其中一个缓存中作图,完成后提交显示,同时在另一块缓存中继续作图,这样两块缓存交替画图-显示,实现了两者的同步进行,提高了效率。 在DirectFB中,一个缓存实际就是一块内存。DFB支持转载 2013-03-21 16:21:58 · 909 阅读 · 0 评论 -
DirectFB 源码解读之外设输入处理流程
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 接着上一节,我们看看输入设备的事件是怎样从硬件传到DFB的最终用户的。下面的代码是DFB用户处理外设事件的一种方法: DirectFBInit( &argc, &argv );DirectFBCreate( &dfb );dfb-转载 2013-03-21 16:20:54 · 814 阅读 · 0 评论 -
DirectFB 源码解读之初始化-5
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 我们先看graphics_core 这个核心部件的初始化。graphics_core是一个与画图息息相关的一个核心部件,每个画图调用都会进入这个部件,并在此决定调用软件实现或是硬件实现。这个核心部件与gfx driver 的关系如下: 源码解读转载 2013-03-21 16:16:18 · 1248 阅读 · 0 评论 -
DirectFB 源码解读之初始化-2
转载时请表明原文出处(http://blog.sina.com.cn/wyw1976)及作者邮箱(wyw1976@gmail.com) 现在我们开始阅读direct_modules_explore_directory()【lib\direct\Modules. C】. Int direct_modules_explore_directory ( DirectModuleDir转载 2013-03-21 15:48:22 · 1254 阅读 · 0 评论 -
DirectFB架构等基本知识
转载时请注明出处和作者联系方式作者联系方式:李先静 DirectFB是一个庞大的系统,对它进行彻底分析要花不少时间。幸好多数情况下,只要弄清楚它的基本架构,再重点读一些关键的代码,也就差不多了。前几个月为了完善DFB的窗口管理器,我花了一些时间去研究DFB的架构。把其中一些经验写到这里,供有兴趣的朋友参考。总的说来,DFB由以下几部分组成:1. 基本库函数。这部分代转载 2013-04-03 14:25:14 · 2032 阅读 · 0 评论 -
DirectFB的接口详解
1. 概述 ================ 本文主要研究DirectFB及其向上向下的接口,顺带讲一下QT搭配DirectFB使用的一些笔记。 其他,如DirectFB的内部结构、Qt的内部结构、及其他GUI系统如android不在本文讨论范围内。 本文会设计一些DirectFB的2D加速函数介绍,3D加速不再本文讨论范围内。 =======转载 2013-03-15 15:22:34 · 919 阅读 · 0 评论 -
DirectFB窗口管理器(unique)研究笔记
DirectFB窗口管理器(unique)研究笔记转载时请注明出处和作者联系方式作者联系方式:李先静 DirectFB自带有两个窗口管理器:default和unique,可以在配置文件中用wm=xxx来选择用哪一个作为当前的窗口管理器。两个窗口管理器的功能都很简单,与桌面环境流行的窗口管理器几乎没有可比性。尤其是前者,提供的功能更是简陋,仅仅是管理一下窗口栈转载 2013-03-14 10:19:00 · 700 阅读 · 0 评论 -
Linux图形界面中客户端、服务器、窗口管理器之间的关系
一、Linux操作系统和图形的关系linux本身没有图像界面,linux现在的图像界面的实现只是linux下的应用程序实现的。图像界面并不是linux的一部分,linux只是个基于命令行的操作系统。Linux内核为linux系统中的图形界面提供了显示设备驱动。二、X的概念X 是协议,就像HTTP协议,IP协议。这个概念很多初学者甚至学习LINUX有一定时间的人都转载 2013-03-14 10:34:55 · 729 阅读 · 0 评论 -
skia之setXfermode
setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状。 如果新的Paint是完全不透明的,那么它将完全遮挡住下面的Paint; 而setXfermode就可以来解决这个问题 一般来说 用法是这样的 [java] view plaincopyCan转载 2013-02-17 18:06:04 · 474 阅读 · 0 评论 -
DirectFB中的一些结构(Screen,Window, Layer, Surface)及其之间的关系
DirectFB 中一些主要数据类型之间的关系层(Layers)表示一块儿独立的图像缓冲区。大多数的嵌入式设备都有多个层。他们由硬件使用合适的alpha值来blending,然后显示。 表面 (Surface)用来保存像素数据的保留内存区域。DirectFB的Drawing和blitting操作最终都是作用于表面(surfaces)上.表面的内存可以从显存(vide转载 2013-04-07 15:35:07 · 1144 阅读 · 0 评论