📄 2.4 字符的生成.htm
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<!-- saved from url=(0058)http://www.ekany.com/wdg98/cg/contents/chapter2/les241.htm -->
<HTML><HEAD><TITLE>2</TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META content="MSHTML 6.00.2800.1106" name=GENERATOR></HEAD>
<BODY>
<H2 align=justify><B><FONT face=楷体_GB2312><FONT size=5>2.4 字符的生成
</FONT></FONT></B></H2>
<P align=justify><FONT face=楷体_GB2312>
在计算机图形学中,字符可以用不同的方式表达和生成。常用的方法有点阵式、矢量式和编码式。</FONT><B></P>
<H3 align=justify><FONT face=楷体_GB2312 size=4>2.4.1 点阵式字符</FONT></B></H3>
<P align=justify><FONT face=楷体_GB2312
size=4>点阵式字符将字符表示为一个矩形点阵,由点阵中点的不同值表达字符的形状。常用的点阵大小有5? 7、7? 9、8? 8、16?
16等等。图2.4.1(a)所示的字母“P”的点阵式表示例子。在这种8? 8网格中的字形比较粗糙,但当点阵变大时,字型可以做得非常漂亮。</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>使用点阵式字符时,需将字库中的矩形点阵拷贝到buffer中指定的单元中去。在拷贝过程中,可以施加变换,以获得简单的变化。图2.4.1(b)~(d)列出了P字母原型的一些变化例子。相应的变换算法是:</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>
(a)
(b)
(c) (d)</FONT></P>
<P align=center><FONT face=楷体_GB2312 size=4><IMG height=140
alt="2_4_1.gif (3270 bytes)" src="2.4 字符的生成.files/2_4_1.gif"
width=511></FONT></P>
<P align=center><FONT face=楷体_GB2312 size=4>图2.4.1 点阵式字符及其变化</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>图(b)变成粗体字。算法是:当字符原型中每个象素被写入帧缓存寄存器的指定位置x<SUB>i</SUB>,
y<SUB>i</SUB>时,同时被写入x<SUB>i</SUB>+1, y<SUB>i</SUB>。</FONT></P>
<P align=justify><FONT face=楷体_GB2312 size=4>图(c)旋转90? 。算法是:把字符原型中每个象素的x,
y坐标彼此交换,并使y值改变符号后,再写入帧缓存寄存器的指定位置。</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>图(d)斜体字。算法是:从底到顶逐行拷贝字符,每隔n行,左移一单元。</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>此外,还可以对点阵式字符作比例缩放等其他一些简单的变换。但是对点阵式字符作任意角度的旋转等变换,是比较困难的操作。</FONT></P>
<P align=justify><FONT face=楷体_GB2312
size=4>由于光栅扫描显示器的普遍使用,点阵式字符表示已经成为一种字符表示的主要形式。从字库中读出原字型,经过变换拷贝到buffer中去的操作,经常制成专门的硬件来完成。这就大大加快了字符生成的速度。</FONT><FONT
face=System size=5><B></P></B></FONT>
<P><A href="http://www.ekany.com/wdg98/cg/contents/chapter2/les233.htm"><FONT
face=楷体_GB2312><上一节〉</FONT></A><FONT face=楷体_GB2312> <A
href="http://www.ekany.com/wdg98/cg/contents/chapter2/les242.htm">〈下一节〉</A>
<A
href="http://www.ekany.com/wdg98/cg/tutorial/chapter2/lesson2-4.htm">〈返回〉</A></FONT></P></BODY></HTML>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -