gdk drawing clip issue with directfb backend
来源:互联网 发布:java中类和包的关系 编辑:程序博客网 时间:2024/06/10 05:35
I am happy to fix one bug today, and it is caused by gdk drawing with directfb backend.
The issue is that there is one pixel width line on the right and bottom edge. Here is one screen shot(http://hi.csdn.net/space-2464555-do-album-picid-483016.html).
I was not sure about it, and I doubted first that I make the wrong clip region. But it was proved that clip was right. After more study, I found the issue was caused by gdk drawing. When it clears the area which to be redraw, it invokes IDirectFBSurface::SetClip() with one DFBRegion. But the region size is larger one pixel both in width and in height.
in gdk/directfb/gdkdrawable-directfb.c, gtk+-2.13.0 (there is same issue in latest version 2.18)
gdk_directfb_draw_rectangle (GdkDrawable *drawable,
GdkGC *gc,
gint filled,
gint x,
gint y,
gint width,
gint height)
{
..........
for (i = 0; i < clip.numRects; i++)
{
DFBRegion reg = { clip.rects[i].x1, clip.rects[i].y1,
clip.rects[i].x2 , clip.rects[i].y2 }; /// this is not right in size
impl->surface->SetClip (impl->surface, ®);
impl->surface->TileBlit (impl->surface, surface, NULL, x, y);
}
.............
}
- gdk drawing clip issue with directfb backend
- DirectFB作为GDK后端时,gtk_widget_show_all()的内部机制。
- Drawing with ASCII art
- Drawing with Data-D3
- Drawing With A Color
- Drawing Board with AS3.0
- Drawing styled text with Uniscribe
- Reverse Proxy with Multiple Backend Web Servers
- 使用 directfb绘制图像(draw image with directfb)
- clip
- clip
- Java Drawing with Apache Batik: A Tutorial
- Drawing a Color Hue Wheel with C#
- Drawing in layered window with Direct2D
- DirectFB
- DirectFB
- DirectFB
- DirectFB
- Selenium 使用介绍
- VC中用GDI函数实规高速平滑动画
- MySQL性能优化的最佳20+条经验
- utl_raw(oracle)
- 【Bootloader】mkimage使用详解 (-a 和 –c参数指定的地址异同的差别)
- gdk drawing clip issue with directfb backend
- 使用.NET实现远程线程插入
- 如何Eclipse改变模板中${user}变量,How to change the variable ${user} used in the eclipse templates.
- 添加星期
- Tlist
- 【Bootloader】U-BOOT全线移植分析系列之四--U-boot如何引导Linux内核启动?
- sql2005 链接服务器 连接Oracle...
- 浅谈HOOK技术在VC编程中的应用
- 浅谈ASP.NET页面生命周期(控件)