Issuu on Google+

小 型 微 型 计 算 机 系 统

期 月

,

中矢 量 字 库 文 件 的 解 析 纪

西北 纺 织 工学 院

开 发 字体 驱 动 程 序 莫定 了基础 关 键 词

,

为用

矢 量 字体

是 一个大型 软件 系统 厂家提 供的 手 册是 如此 泛 泛而谈 。

完 全 挖 掘 出来

对 于 软件 开 发 人 员 来 说

,

不 论 是 在 传统 的

环 境 下 设 计 应 用 软 件 都 是 一 个 良好 的 软 件 开 发 工 具

下还 是在流行 的

加之技术细 节保密因素

,

我 们 在 设 计 实 现《印 制 板

中提 供 的 六 种 英 文 字 库 文 件

西安

,

川 ,

中夫量 字 库 的 文 件 结 构

本文分析 了

,

,

环境 由于 某 些

以 致 于 其 巨 大 的 潜 能 目前 还 尚 未

激 光 照 排 系 统 》时

,

有幸分 析 了

这里 我们将其 中的三种 矢量 字库 文 件 主要细 节 部 分 予 以 发

,

供 同行 们在 开 发 软 件 时 参考

三种矢量字库文件 中提 供 了六 手字 库 文 件 ,

字库 名 ,

描述

,

固定 宽 度

位 映 寸的

成 比例 的

位 决射 的

成 比例 的

位 决射 的

成 比例 的

矢 量 决射 的

成 匕例 的

矢 量 决射 的

成 比例 的

矢量映射的

,

王纪川

,

为矢量一 决射 的

宽度 指 每一 字符 所 占宽度 相 等 收 稿 日期

其 中前 三 种 字 库 文 件 三种

现描 述 如 下

,

,

,

为位映 射的

即矢 量 型 字 库

,

即 点 阵 型 字库

,

在描述部分 固定

成 比 例 的 指 每一 字 符 其 所 占 宽 度 不 一 样 根 据 具 体 字 符 的

硕士

,

讲师

从事

,

及 图 像处 理 的 研 究 开 发工 作


小 型 微 型 计 算 机 系 统

形状而定

,

例如

和 字符

字符

在 显示 时所 占宽 度 不 一 样

中提 供 了 若 干 函 数 如 ,

种字 符

,

等 具 体用 法 参 见 〔 ,

并 且 字 符 的大 小 不 能精 确 控 制等

提 供 的这 几 种 字 库 文 件 的 结 构

中从

为 一 些 说 明性 信 息

宽度 信息

,

以 及 产 生该字 符所需 的笔 划 数

上 面 三 部 分 构 成 了 该 字 库 的 内容

行 详细说 明

,

此字 符 的形 状

说明矢量字库 的结构

,

在此不再重 复

,

个字 符的形 状 信息

其它两种

,

其 中该字库文 件

为每个字 符的描述偏移量和

。中

然 后按某 种方法 产 生 该 字符

,

为产生 每一字 符 的笔 画 信 息 。

并 且 每 一 部 分 有 各 自的 规 定 及 结 构

以下对二

三部分进

最终可产生

,

宽 度信 息 及 字符笔画数

上 面 已经 提 到

符 的有 关 信 息

的 宽 高成 比例

,

字 库 中包 括

,

字 符 集 中的 可 打 印字 符 从

那么 某 个 字 符例 如大写 字 母 而 字 符 高是 确 定 的

,

在该字库 的什么位置描 述呢

那 么某字 符 的宽 度 为多 少 呢

这 些 问题 均 在 字 库 的 本 部 分 给 以 说 明

为多 少呢

需 要 了解

,

的 结 构 相似

,

因 为这 两 部分 说 明 了任 一字 符 在 此 字 库 中的描 述 位 置 及 笔 划 次序

,

偏移量

,

为 了解决 上 述 问题 为例

字 符 集从

,

的结构 基 本 和

字库 文件描述 了

为 了使用这 些字 库文件

〕 但应 用 这 些 函 数 只 局 限 于 在 屏 幕上 显 示 各

找 到 描 述 某字 符 的 所 有 信 息

,

下面 以三种矢 量字库 文件 之一 的 、

个字

由于 字 库 中字 符

另外 某 个 字 符 的 笔 划 数 又

这 一 部分 的基 本 数据 结 构 可定 义 如 下

〔 、壬 ‘ 《 、

其中

息 点数

说 明描 述 某字 符 笔 划 开 始 的 相 刘 女 台址 ,

说 明该字 符 一

笔 划 数 的字 节 数 为 以 便计算其笔划 数

码值 例如字母 ,

,

为该字符的宽度信 。

码后 下一字 符笔划 开始 的始址 〔

又」 于第

因此描述本字符

个字 符本 部分 有 一车 助 信 息

本 部 分 在 字 库 中的 基 址 为 ,

,

其值为

,

,

对 于 任一 可打 印字 符

从 中减去

,

因 可打 印字 符从 ,

便得 到 描述 该 字符 偏移量及宽度信息的相对 始址 再 将其 和 从址

它有其 固有的

即 空 洛开 始

再乘以

,

相加 读取三个无

符 号 整 数 这 时 便 可 得 到 描 述 该 字符 笔 划顺 序 的相 对 始 址 宽 度 信息 及 笔 划 字 节 数 ,

,

,

笔划信息 本 部分 详 细 描 述 了某 字 符 的 产 生 过 程 对偏移量和所需字节数

,

轴 方 向垂 直 向 下 为 正

值 范围

,

完全 生成该字符

,飞

因此从

个 字 节 描 述 了该 字 符 的 生成 过 程

我 们 已经得 到 描述某字符笔 画信息的相 开始共

注 意 每 个 字 符 产 生 的 源 点为 左 上 角

其 中每个 字节位 都 为 相 对 量

若遇 到 字节值 为

即一

,

一 ,

轴方 向水平 向右 为

这些字 节均 为有符号单字节整 数

则 为起 笔

,

否 则一直连 笔 画下 去

,

直至


。 中矢 量 字 库 文 件 的 解 析

王纪川

程序 和 实 例 、

综合 结果

下 面 以 屏 幕 输 出为 例 给 出 其 实 现 程 序

,

并且 以 字 符

说明

此 程 序 只作 为样例

,

可对

在 实际 使 用 时

,

子 程 序进 行 修正

时能进行各种变换 如旋 转 、

轮廓化

实心

以 便 输 出字 符

,

镜象

错切

阴影 处 理 等

,

变形

在此不再

深 入 讨论

有 兴 趣 的 读 者 可 自行 处 理

,

实例

的结 果 图示 如 图

字符 程序

附录 、、 ‘

、 ‘ 卜

,、

、,

、“

八‘

,

八 卞

元掩

一。

,

,

,

,

,

,

入 〔

〔 、

一 ,

于 ‘

〔 〕

资一

,

〕 衣

,

奋一 是一

,

,

,

,

,

,

《 开

,

,

飞丢一

,

,

,

,

,

,

之 ”

八啼

咬 “

‘,

,

,

百 〔

,

,

,

,

‘,

给 出其 最 终

卿用渊用照井照照干 照甲渊半燕甘月翁王 开干渊干琴 开开干 非至林丁邢井开开甲 拜甲洲用照琴日卿年 娜阵洲甲邢我 瞬照甲 干 田平 杆 盯肝即 开呼 洲 田 件 田斗卜抖 阱肛斗

程 序请 参 看 附 录

为例

日洲吓召 日干干民 召干石压 田用用月

程序 实现

扭曲

,

、 ‘

,


小 型 微 型 计 算 机 系 统

,

,

一 、 ,

】色

。 、

,

,

,

,

十 飞企

十一 , 《

。 、‘

,

,

,

奇一 , ‘、

,

,

,

,

十 之一

十 一

泛几

一。

关 并

,

,

,

,

关 一

,、

关 关

七‘

,

十 十

二 、

,

、 】

附录

一一

字库文 件信息 注 意 本 字 库 信 息读 者 可 用

程 序得 到

〔 〔

此 处 省略

因此 其 偏移量和 上 文 提到 的

偏 移量相 差

〔 〔

,

,

〕 〕

语 言 参 考 手 册 北 京 科海 培 训 中心 ” , 高 级 程 序 设 计 技 术 北 京 科 海 培 训 中心 。 〕 章 含 编 软 件 开 发 人 员必 备 工 具 书 。。 经 典 海 洋 出版社 〕 林君 编 译 语 言 图 形 程 序 设 计 技 巧 与 实例 海 洋 出版 社 〕 〔美 〕 著 江帆译 软 硬 件 技 术 资 料 大 全 清 华大学 出版 社 ,

,

,

‘, , 了

‘ 。

尹叨

‘二

,

已 , , 〔。

左 ,

。。

、一

,

,

,

为。‘,

舒 ,


矢量字库