过期主题 该主题因在两个月内没有任何回复而自动关闭。
如果您还对该主题感兴趣或者想参与对此主题的讨论,请您重新发表一篇相关的新主题。
关闭主题
第1页,共64页:  1  2  3  4  5  11  51   最后 »
主题工具  
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
gdipp 0.9.1 测试版 [2010-09-20], 2010-02-10, 13:46:22 #1 | TOP
(测试阶段暂定名)是我发起的一个项目,是一个可自定义的 Windows 文字渲染器,旨在重新自己实现 gdi++ 的功能,使之具有更好的兼容性、稳定性、性能和详细文档。具体讨论在。项目首页有使用默认设置时记事本的截图。

gdipp 项目包含多个组件,如和 gdi++.dll 对应的 gdimm.dll (gdi--),gdipp Loader(程序加载器),服务,配置预览器等等。提供安装包,方便用户使用。gdipp 项目主要针对 Windows 7/Vista 系统。部分或所有组件可能无法在 Windows XP 或之前系统上正确运行。支持 32 位和 64 位系统。

在此非常感谢 , 同学的帮助,以及 gdi++ 作者们的代码。
特别感谢以下测试者:
完整的中文更新列表:.
设置文件的中文详细说明:,。
已知问题列表:.
设置文件的一些讨论:. 希望设置预览器完成以后,普通用户就不需要再直接接触设置文件了。

使用中有任何问题可以跟帖讨论。但如果发现任何错误和崩溃,比如文字无法渲染,扭曲,位置不对等等,请到 报告(中英文皆可),因为帖子内容混杂,又不能搜索,难免会遗漏。报告时请指明你的系统环境(包括 32 位还是 64 位)、程序名和 gdipp 的设置。如果是渲染效果有问题,最好能带上说明问题的截图。相关的技术、字体的讨论请到。如果你英文不错,直接去 。

下载地址:
使用方法:
安装前请确认你关闭了 gdi++,包括注册表加载或 gdi++ Tray.

安装包内有不同加载模式的解释。注意,如果你没有管理员账户,你只能使用“程序加载器”方式进行安装。文件。当然,如果你自己修改注册表,gdimm.dll 仍然可以渲染。

适用系统
Windows 2008, Windows 7, Windows Vista 和 Windows XP. 32 位和 64 位同时支持。

使用 gdipp,不用关闭系统的 ClearType. (好像有一个传说,说在用 gdi++ 的时候关闭 ClearType 会提高性能。我没有 Windows 的源代码我不敢保证,但绝对没有文字被渲染了两次因此性能降低的可能性。相反,我建议在用 gdipp 或 gdi++ 的时候启用 ClearType,这样在遇到他们无法处理的文字是,至少还有 ClearType 来后备)

优于 gdi++ 的地方:
最后谢谢你的参与!

声望评价
  
  辛苦辛苦~支持项目~~
  
  GOOD JOB
  
  辛苦了,多谢
此帖于 2010-10-03 05:28:21 被 CrendKing 编辑.
回复时引用此帖
以下 129 位极客对 CrendKing 此帖表示感谢:
2000320 (2010-02-11), 6235000 (2010-02-16), 6ovx (2010-02-10), aeolus266 (2010-04-10), Afansoge (2010-02-10), ajjfwh (2010-02-14), allen312 (2010-03-19), anshi1004 (2010-04-06), anyphoebe (2010-03-19), ATiGr (2010-03-11), baiyssy (2010-02-22), Biskup (2010-02-10), bluetnt (2010-03-04), Butler_2000 (2010-03-03), calaquendiv (2010-02-26), chenghao1994 (2010-02-10), CjWy52 (2010-02-14), comme (2010-02-10), craig_wu (2010-03-30), cuileily (2010-03-23), dahuahero (2010-02-23), deo7655 (2010-02-10), diCkZ (2010-02-26), dipplum (2010-02-13), dll (2010-04-11), duyu523 (2010-02-16), dy3201 (2010-02-10), Fantasy232 (2010-02-11), Fantsay (2010-02-11), flowercold (2010-03-25), FlyingSnow (2010-02-10), fonlan (2010-03-02), fooleap (2010-02-10), gandalfzoro (2010-02-25), gaongl (2010-02-25), ginau (2010-02-24), gjc (2010-02-17), happyfly (2010-03-27), harold21 (2010-02-10), hjbl50 (2010-04-04), jingjingls (2010-03-21), jinke679 (2010-02-12), jon945 (2010-03-21), Kano (2010-03-05), KESEN (2010-03-14), khf1013 (2010-02-22), kindredme (2010-02-11), kiral (2010-03-19), lazykingp (2010-03-04), leoooo (2010-03-03), lgm (2010-03-26), Linkzero (2010-02-13), linn (2010-02-10), lrjoy (2010-02-10), lulu1028 (2010-03-15), LunaX (2010-02-18), Max (2010-02-25), medroxy (2010-02-27), millionart (2010-03-17), mioo (2010-04-06), morrowice (2010-02-15), msylgj (2010-03-30), my utopia (2010-04-03), MYSTiQUE (2010-03-08), nannan828 (2010-02-10), nazibt (2010-03-21), niello (2010-03-09), NoAnsw1r (2010-03-04), placeless (2010-03-12), psworker (2010-02-25), pugatory (2010-02-10), qingpi (2010-03-05), qiuyi (2010-03-02), Qupic (2010-03-02), realem (2010-02-26), riverZ (2010-02-15), romantic8055 (2010-02-11), Ruboking (2010-03-31), sea1983 (2010-03-01), skfsms (2010-03-25), skyline (2010-03-09), slevincheung (2010-03-14), soarlin (2010-04-08), store88 (2010-03-16), Stormbolt (2010-02-10), Tilseam (2010-02-10), toto16 (2010-02-10), ufowangjian (2010-03-22), webph (2010-03-22), wineo (2010-02-10), wulunruhe (2010-03-19), xiaoyu0001 (2010-02-15), yimengxing (2010-02-28), yutanzhen (2010-03-02), z100 (2010-02-23), zhangk (2010-02-10), zhaojunll (2010-02-14), zhulinxizi (2010-02-11), ZSZDDN (2010-03-20), zzhi (2010-02-10), Ατλαντ (2010-02-13), プ游 (2010-03-10), 二月兰 (2010-02-14), 倾听寂静 (2010-02-10), 卡萨布兰卡 (2010-03-17), 夏夏 (2010-02-10), 大能猫 (2010-02-19), 小Q (2010-02-11), 小雒 (2010-03-12), 幽篁小筑 (2010-02-10), 撞破江湖 (2010-04-01), 昊月 (2010-02-13), 曲yue (2010-03-02), 泡泡龙 (2010-02-11), 泡面大帝 (2010-02-10), 温莎公爵 (2010-02-14), 火柴盒子 (2010-03-03), 火神家园 (2010-02-10), 紫色偶然 (2010-02-15), 般若 (2010-03-25), 酷儿P (2010-04-02), 陈真 (2010-02-10), 风见凖人 (2010-02-19), 飞花似梦 (2010-02-10), 高桥凉介 (2010-02-26), 鸡尾酒 (2010-02-10), 麥麥西 (2010-02-10), 黑白原色 (2010-02-10), 默默无语 (2010-03-11)
夏夏
夏夏 的头像
超級妹控
级别:18 | 在线时长:1752小时 | 升级还需:148小时级别:18 | 在线时长:1752小时 | 升级还需:148小时级别:18 | 在线时长:1752小时 | 升级还需:148小时
注册日期: 2008-06
来自: 人間界
帖子: 1,622
致谢: 1,960
2010-02-10, 13:54:26 #2 | TOP
跑来致谢了。这个的亮点是64位的支持么?

字硏會QQ群:「69633738」
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 14:06:34 #3 | TOP
话说现在支持 64 位系统的呼声那么高么?
回复时引用此帖
linn
linn 的头像
极客III
级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时
注册日期: 2005-11
帖子: 315
致谢: 346
2010-02-10, 14:21:04 #4 | TOP
来试试看,感谢先~~
性格决定成败...
回复时引用此帖
泡面大帝 帅哥
泡面大帝 的头像
有妹子的面哥
级别:15 | 在线时长:1288小时 | 升级还需:72小时级别:15 | 在线时长:1288小时 | 升级还需:72小时级别:15 | 在线时长:1288小时 | 升级还需:72小时级别:15 | 在线时长:1288小时 | 升级还需:72小时级别:15 | 在线时长:1288小时 | 升级还需:72小时
注册日期: 2005-05
来自: 岛民
帖子: 1,666
致谢: 1,180
2010-02-10, 15:07:10 #5 | TOP
前排支持,希望不要太多的致命BUG,另外那个新的GDI我都用怕了,经常崩溃
回复时引用此帖
chenghao1994
chenghao1994 的头像
极客II
级别:9 | 在线时长:511小时 | 升级还需:39小时级别:9 | 在线时长:511小时 | 升级还需:39小时级别:9 | 在线时长:511小时 | 升级还需:39小时级别:9 | 在线时长:511小时 | 升级还需:39小时
注册日期: 2009-12
帖子: 134
致谢: 186
2010-02-10, 15:14:25 #6 | TOP
支持支持啊。64位时代迟早要来,提前做好准备。
回复时引用此帖
FlyingSnow
下里巴雪
级别:12 | 在线时长:900小时 | 升级还需:10小时级别:12 | 在线时长:900小时 | 升级还需:10小时
注册日期: 2005-07
帖子: 1,859
致谢: 3,119
2010-02-10, 15:22:51 #7 | TOP
效果还不错,效率也比较高!
不能字体链接,QQ关闭时崩溃。
回复时引用此帖
linn
linn 的头像
极客III
级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时级别:14 | 在线时长:1151小时 | 升级还需:49小时
注册日期: 2005-11
帖子: 315
致谢: 346
2010-02-10, 15:39:40 #8 | TOP
我的Win7下,QQ和Registry Workshop都没问题,但是某些程序会显示VC++ Runtime Error!, 比如 Snagit...

PS:好像不支持配置文件?默认的效果有点灰度虚化....
性格决定成败...
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 15:49:00 #9 | TOP
你发现那个 0 右上角比较淡没有?似乎我的 Outline 的解析算法还是没对?

还没有 cache 能达到这个速度还是比较满意的,应该说和 GDI++ 差不多,但要和系统的渲染速度比还差,Visual Studio 上下拖动就看得出来。我想了好几种 cache 的方法。最基础的是对每个不同的 face 的每种不同 style 做 cache,进程与进程独立。往上是只对 face 做 cache,遇到不同 style 时做 transformation。再往上是用 file mapping 或者服务做进程间 cache 共享。最理想的状态估计会和系统渲染能一拼吧,但那样就复杂了。

我一直不理解你说的字体链接。我理解字体链接就是,选择一个只包含英文字符的 glyph 的字体,如果能渲染出中文字符,那就是字体链接了。比如那个 demo,About 窗口里面是“demo 来测试にほんご能否显示”,字体是 Tahoma。如果正常显示出所有字符,那就是能字体链接。如果你显示不出来,那可能你的 SystemLink 键有问题。如果你说的意思和我说的不同,那又是另一回事了。我还没做 ini。

我没测试 QQ。不过为什么是关闭时崩溃……
回复时引用此帖
comme
comme 的头像
极客II
级别:4 | 在线时长:128小时 | 升级还需:22小时级别:4 | 在线时长:128小时 | 升级还需:22小时级别:4 | 在线时长:128小时 | 升级还需:22小时级别:4 | 在线时长:128小时 | 升级还需:22小时
注册日期: 2004-08
帖子: 151
致谢: 26
2010-02-10, 15:50:48 #10 | TOP
暂时不当小白鼠,但也致谢一下
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 15:55:10 #11 | TOP
不支持配置,测试版嘛,希望理解。目前最重要的是搭框架,最麻烦的是系统兼容性。这些解决了,后面的东西都好说。

关于渲染效果,你用放大镜看,应该是 LCD 模式(彩色的)。同时关闭了 Hinting,所以看起来虚。要支持这些都很容易,以后加上。测试版主要是拿来测稳定性、兼容性的。
回复时引用此帖
FlyingSnow
下里巴雪
级别:12 | 在线时长:900小时 | 升级还需:10小时级别:12 | 在线时长:900小时 | 升级还需:10小时
注册日期: 2005-07
帖子: 1,859
致谢: 3,119
2010-02-10, 15:57:06 #12 | TOP
GDI++ft最慢的一步就是反锯齿,而你的代码中没有,所以至少会快上一大截,这也是GDI++效果好的原因。
About中用的似乎是宋体,本身带有日文,不需要链接。打开QQ就可以看到Tahoma对应的中文无法渲染。我的SystemLink是原版的,字体也没有替换过,肯定是正确的。

我也不知道为什么关闭崩溃,报告显示崩溃在GF.dll中,没有做分析。
回复时引用此帖
dipplum 帅哥
极客II
级别:3 | 在线时长:99小时 | 升级还需:1小时级别:3 | 在线时长:99小时 | 升级还需:1小时级别:3 | 在线时长:99小时 | 升级还需:1小时
注册日期: 2008-09
帖子: 72
致谢: 17
2010-02-10, 15:58:36 #13 | TOP
win7 x64 Loader.exe 载入 iexplorer.exe,页面不能渲染,而且渲染的字体有些怪。
注册表载入则基本没问题,稳定性不错。
上传的图像
文件类型: png gdimm-ie.png (93.5 KB, 577 次查看)
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 16:08:30 #14 | TOP
IE8 是父进程创建子进程,loader 只 inject 父进程,所以必须要用注册表加载才能渲染页面。你页面的那个单色位图应该不关 gdimm 的事啊,因为都没加载。我不知道怎么回事,我用 loader 的话,页面就是 ClearType.
上传的图像
文件类型: png IE8.png (164.1 KB, 390 次查看)
回复时引用此帖
dipplum 帅哥
极客II
级别:3 | 在线时长:99小时 | 升级还需:1小时级别:3 | 在线时长:99小时 | 升级还需:1小时级别:3 | 在线时长:99小时 | 升级还需:1小时
注册日期: 2008-09
帖子: 72
致谢: 17
2010-02-10, 16:11:58 #15 | TOP
我为了测试gdi的效果,把ClearType关掉了。
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 16:27:10 #16 | TOP
你说的反锯齿是 FreeType 做的反锯齿还是 GDI++ 自己做的?我认为现在的渲染是反锯齿的啊,获得 Outline,传给 FT_Glyph_To_Bitmap(),得到 24 位位图。原理和 GDI++ 的 ForEachGetGlyph() 及 CGGOOutlineGlyph 类是一样的。gdimm Outline 到 Bitmap 的函数是 text.cpp 里 257 行开始的 get_glyph()。如果没反锯齿,那得到的位图应该是单色位图,肉眼可辨。

至于 About 窗体,你可以看 demo.rc,是 Tahoma。Tahoma 默认的链接顺序是
从韩文的 Gulim 开始,然后是宋体。你看到了宋体表明已经做了 FontLink。你可以做实验,把 SystemLink 下的 Tahoma 删掉。重启再开 demo,About 窗体就应该显示不出中文和日文了。

我现在用的也是和 GDI++ 相同的 GetGlyphOutline,字体链接全是由系统内部完成的,所以快而且稳定,代价是调用这无法知道每个字符用得到底是什么字体。这导致了 GDI++ 里面,你对某个字体单独设置渲染属性(比如开启 Hinting),结果连它链接过去的字体也用了相同的设置。font_link.cpp 可以自己来做链接,但就是不稳定。FreeType 模式必须自己做链接。

---------- 帖子于 08:27 更新 ---------- 之前内容发布于 08:25 ----------

ClearType 可以不用关(也不建议关),但你不能同时使用 GDI++ 和 gdimm。虽然不大会崩溃,但到底是由哪个 dll 来渲染的文字就说不清楚了(应该时候加载的那个)。
回复时引用此帖
FlyingSnow
下里巴雪
级别:12 | 在线时长:900小时 | 升级还需:10小时级别:12 | 在线时长:900小时 | 升级还需:10小时
注册日期: 2005-07
帖子: 1,859
致谢: 3,119
2010-02-10, 16:31:55 #17 | TOP
我说的不太清楚,GDI++的contrast等等参数会导致反锯齿效果改变,是由GDI++自己处理的,所以才会比较慢。

你可以开QQ看一下就明白我说的了,Tahoma中的宋体是ClearType效果,非常明显,原因我就不知道了。
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 16:41:42 #18 | TOP
嗯,你说 contrast,应该是指 CAlphaBlend 那个类吧?阴影也是用那个来实现的。但我现在处理办法简化了它的算法,效果看起来也不差啊。没必要为了不大的提升而去牺牲性能吧。况且我还可以 1) 用 FT_Outline_Embolden 调整 outline 的粗细;2) 用 FT_Bitmap_Embolden 调整位图的粗细;3) 用 Windows 的 AlphaBlend 这个 API 做 alpha。这些都是现成的,性能都不差的,何必去吃力不讨好呢:)
回复时引用此帖
火神家园 帅哥
火神家园 的头像
失踪极客
级别:1 | 在线时长:20小时 | 升级还需:10小时
注册日期: 2008-06
帖子: 7
2010-02-10, 16:43:11 #19 | TOP
LZ说的黑快是这样的吧,我在2010里测试的:
上传的图像
文件类型: jpg 未命名.jpg (13.8 KB, 26 次查看)
回复时引用此帖
CrendKing
CrendKing 的头像
荣誉极客
级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时级别:10 | 在线时长:608小时 | 升级还需:52小时
注册日期: 2005-12
帖子: 609
致谢: 306
2010-02-10, 16:46:20 #20 | TOP
对。GDI++ 应该也不行吧?这个我暂时还没去管,慢慢来。
回复时引用此帖
关闭主题 « 上一主题 - 字体渲染 - 下一主题 »
第1页,共64页:  1  2  3  4  5  11  51   最后 »
过期主题 该主题因在两个月内没有任何回复而自动关闭。
如果您还对该主题感兴趣或者想参与对此主题的讨论,请您重新发表一篇相关的新主题。
主题工具
发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码

论坛跳转:
Copyright ©2003-2014, THEMEX.NET [湘ICP备14009485号]
Powered by vBulletin® v3.8.3 ©Jelsoft Enterprises Ltd.
所有时间均为北京时间。现在的时间是 20:46:51