设为首页收藏本站官方微博

汉化资料 [译]Bitmap fonts in XNA

[复制链接]
查看: 2015|回复: 0
打印 上一主题 下一主题

[汉化资料] [译]Bitmap fonts in XNA

跳转到指定楼层
楼主
发表于 2010-5-12 11:38 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

[译]Bitmap fonts in XNA

原文
) t) C  ^  n, {% D+ Bhttp://dearymz.blog.163.com/blog/static/2056574201012483533257/
0 T8 C9 j/ V  ?4 O. T+ C/ V% H: |5 _+ M: E1 r* X1 a/ @2 s6 f9 |. F
[译]Bitmap fonts in XNA
( v( h' u* j  g1 a/ q, n6 N. mXNA 2010-02-24 20:38:19 阅读88 评论1 字号:大中
9 D7 Q& k; K! S+ `; l$ Z
Bitmap fonts in XNA
XNA中的图片字体
- K: v$ h" G0 P+ t
    XNA字体系统通常从头XML文件所描述的TrueType字体字提取数据,但同时也能直接从手绘的位图中抓取字符图片。/ P' j# `- J" d2 D
    TrueType字体用起来很方便,但有时候你会发现需要一种更具特色的文字外观。 你可以将一系列的字符图片排列到一张位图中来创建自定义的字体,每个字符图片中间的分割需要用纯的品红色(0xFFFF00FF)。
9 c" G1 }: c# A: R& a2 [: K0 e
) g* C1 X. V; _! O8 j1 M    这张图片必须包含alpha通道来描述区域的不透明或透明,品红边框区域的alpha通道必须被设置成不透明。
/ G' V3 f) @" `0 u& W    当你把该文件加入Game Studio Express工程后,默认的Content Importer为“Texture”,默认的Content Processor为“Texture (Sprite, 32bpp)”。为了指出这是一张需要转换成字体的特殊图片,你需要将Content Processor改为“Font Texture”:
8 c' b( v4 F* l- C3 \- C; m
; i4 A5 `7 d3 _0 P! `* ?
- N$ f/ g9 r  w3 g/ |  H+ N9 l9 Q( b' D! m; I, S/ K5 b
    SpriteFont类对从位图创建而来的字体的加载和显示方式和从XML描述文件转换来的字体完全一致。我可以通过上面所示的浮雕图片来渲染时髦的浮雕效果:
9 l& [1 |) n0 W* y8 `2 m. P% C9 y
; d; [4 Y, ^* X    这时,你也许会担忧手工将全部的字体画到位图中一点也不好玩。你是正确的,我也不喜欢这么干。
5 Q( L- X9 V' e$ A    幸运的是,有个在XNA CGP GSE Samples & Utilities, Inc工作的热心家伙也发现了这个现象,并写了个小工具搞定了该问题。该程序从选择你想要用的TrueType字体界面开始:- J% h9 q; j# c% m

  I  V* A- C$ T4 _* V
% U) e9 \% X! B; i# ~8 O* y( |- [
( _1 b3 D7 ]. p7 v3 S8 A' m# Z5 j6 w9 q0 r' U* P& v. V9 `
    当点击Export按钮后,工具做了和标准的XML字体描述处理器类似的工作,并将字符图片输入到一张以品红区域隔开的位图文件中。
" C0 e+ I8 Z4 m- s! u9 D4 O7 J- n    上面的浮雕字体我是通过ttf2bmp工具创建的,然后将输出的图片放到Photoshop中,选中除品红区域外的部分,然后运行浮雕过滤器,最终将这幅修改过的图片送给Content Pipeline的“Font Texture”处理器。2 i* N4 v  ]' g5 L
    ShawnHargreaves 2007年4月26日 下午3:44 星期四 发布。! P' z3 u4 O- E1 x
[完]
( S7 q9 M9 f0 j
! A8 |! b9 k- |译注:
* L% r) z2 `8 z3 W    XNA通过简单的图片就可以直接生成字体,非常简捷。通过XML的 SpriteFont配置文件生成字体是一种选择,但直接通过图片创建字体可以提供更大的灵活性,比如文中提到用PS对图片进行深度加工。由此看到明文(或可理解)资源格式的重要性。通过明文文本或者其他标准的、流行的或可被理解的方式保存资源对游戏的制作非常重要,自定义资源格式是将自己一步步陷入不毛之地。: J3 v0 {  u  R2 a/ O) w' L
    标准化,而不是去创造标准。: \7 |( L7 p( S3 {1 H1 ]9 ]* _

( }2 x7 I( z; Z7 |) n原文地址:http://blogs.msdn.com/shawnhar/archive/2007/04/26/bitmap-fonts-in-xna.aspx . ^* t: K! |" L( ~
ttf2bmp XNA字体图片生成器下载地址:http://creators.xna.com/en-US/utilities/bitmapfontmaker
" D+ Y6 n8 K+ p) Y另外推荐一款强大的XNA字体图片生成器:SpriteFont 2
2 S, ?) i) f, b. Z- X" G. o) Z中文字体的显示可以参考SpriteFontX。原理:在运行时采用GDI+系统将TrueType字体渲染到Bitmap再导到Texture2D,实现TTF字体的动态光栅化。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 很美好很美好 很差劲很差劲
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

冒险解谜游戏中文网 ChinaAVG

官方微博官方微信号小黑屋 微信玩家群  

(C) ChinaAVG 2004 - 2019 All Right Reserved. Powered by Discuz! X3.2
辽ICP备11008827号 | 桂公网安备 45010702000051号

冒险,与你同在。 冒险解谜游戏中文网ChinaAVG诞生于2004年9月9日,是全球华人共同的冒险解谜类游戏家园。我们致力于提供各类冒险游戏资讯供大家学习交流。本站所有资源均不用于商业用途。

快速回复 返回顶部 返回列表