iPad上的字体子像素渲染

Reb*_*ely 7 fonts rendering cleartype ipad subpixel

ClearType等子像素字体渲染可显着提高字体显示分辨率并提高屏幕可读性.如何编写字体的子像素渲染(通常),以及如何在iPad(iOS设备上的C,C++或Objective-C)上实现这一点?iPad上某些尺寸的字体非常模糊,我知道iPad的显示效果会很好......

那么,我将如何开发iPad的字体渲染引擎(例如,我如何访问子像素?我是否使用OpenGL?是否存在用C,C++或Objective-C编写的现有开源字体渲染引擎Mac OS X?)?

poh*_*ohl 14

iPad上的每个像素都是一个由红色,绿色和蓝色组成的矩形,因此人们可能会认为子像素字体渲染对于设备而言是一个不错的选择.

但请注意,此设备可以轻松地从纵向模式更改为横向模式,并且应用程序可以响应此更改.这意味着您的子像素字体机制也必须响应该更改,并且您需要为每种字体提供两个单独的子像素描述.

现在,事实上开发人员希望能够在单次购买/下载中编写在pad和手机上运行的通用应用程序.但请看下图中各代手机的不同像素配置.回想一下,每一个都需要在纵向模式和横向模式下以不同方式描述字体.现在你有了大量的字体描述.

现在回想一下,我们谈到的是便携式设备,其中最宝贵的资源是电池,而子像素字体渲染的计算量更大.

我猜这与思维过程没有什么不同,导致Apple避免使用亚像素字体渲染,而是希望显示技术将像素密度提高到不再需要的程度(iPhone上的视网膜显示) 4是朝这个方向迈出的第一步.)

我敢打赌,在iPad的未来版本中,我们将拥有一个具有相似密度的显示器,并不会那么重要.您尝试为iPad应用程序发明子像素字体渲染机制所投入的任何努力都将立即被消除,因此我建议不要沿着这条路走下去.

在此输入图像描述

  • 这听起来像是一个实施决定.可以在磁盘上具有4个表示,或者在安装时计算4个表示(并将其存储在磁盘上)或在字体加载到存储器时计算4个表示,或者在设备响应重新定向时计算表示.无论你选择什么,你只是将成本从一个地方转移到另一个地方,但是,没有摆脱它.在移动世界中,任何这些都可能不是最明智的资源使用,其中存储,内存和CPU应该全部使用. (3认同)