一、多行文字概述
; Q/ p9 `, s) W j. [在DWG图形中,多行文字是作为单一对象来进行操作,可以包含一行或多行文字内容。由于多行文字带有内部格式,因此对于表示格式复杂、内容较长的输入项特别有用。) u* x' B$ t0 ^% u: d- I# Q
我们可以通过命令行或多行文字编辑器创建一个或多个多行文字段落,输入文字之前,应指定文字边框的大小。文字边框用于定义多行文字对象中段落的宽度。 多行文字对象的长度取决于文字量,可以用夹点移动或旋转多行文字对象。8 T6 z }" z q1 G$ J
文字的大多数特征由文字样式控制。文字样式设置默认字体和其他选项,如行距、对正和颜色。也可以通过多行文字编辑器设置多行文字的整体或局部特征,包括字体、高度、颜色、水平对正、垂直对正、上下划线、倾斜角和宽度比例等。还可以在多行文字中创建堆叠文字,堆叠文字是用来标记公差或测量单位的文字或分数。表示分数度量或公差的字符可按照多种标准格式设置,如公差堆叠、水平分数和斜分数。. F* y! |, r! z5 w5 y
& g5 M& |3 N1 e8 Z8 f6 `! G8 K1 v( z
@6 {' F. M3 u) w7 ^5 l5 `7 R
二、技术改进
+ Y1 [) s* k% o6 ?3 N1 p在浩辰ICAD2008以前的版本中,多行文字各项功能和性能明显落后于AutoCAD,兼容性是最突出的问题。例如:
& C' N. X' `, f) F2 r+ t1.文字宽度存在问题,尤其中英文混排时,表格中的文字经常无故超出单元格。
" T( A# W) P+ |4 z+ q2.ACAD调整好的文字在ICAD打开,文字有时会出现移位现象。
7 [9 _, N" c. P! D) Q$ [0 U3.同样的字体,ICAD显示的结果和ACAD有区别。9 R: ^. ?" Y8 c% z5 a- K: q: K) ?
4.换行处理和ACAD不一致,导致多行文字中出现多余行。
3 s7 ?4 K5 _& p4 L5.解码错误,容易出现多余字符。
' d) ^# }6 B2 l: C/ M& K
9 E. i; D9 o. L9 E4 S! A* Q! [' S1 z认识到这些不足之后,浩辰技术人员经过数月的潜心研发,在浩辰ICAD2008版中,从底层对文字、多行文字进行了系统的技术改进,在文字系统在功能和性能上基本接近于最新版本的AutoCAD,相比浩辰老版ICAD和国内同类产品,浩辰ICAD2008的兼容性有了显著提高。这些重要技术改进体现在一下几个主要方面:
* i4 |. P% e, v5 g6 f6 c1.全新的多行文字解码系统。文字格式的解码是多行文字处理的基础,错误的解码结果,将导致多行文字布局和显示混乱,给用户代理许多不必要的麻烦。新的解码系统不仅功能更加完善,支持目前所有的文字格式,而且容错性良好。
n# }, `$ a0 H' `2.全新的字模解析功能。字模解析是将TrueType字符或SHX字符转换为可显示数据的过程,新的字模解析功能有助于提高文字显示性能,并且尺寸控制更精准,文本行的长宽和AutoCAD完美兼容。. D: H& L, F: p9 E/ U( V
3.全新的多行文字排版布局系统。增加了对段落缩进和制表位的支持,完善了排版布局功能,大大增强多行文字显示输出兼容形。
, B* N3 e. v+ f% s% q0 J' [4.改进字体管理系统。全新的字体和字形缓存机制,相比老版浩辰ICAD,有效地减少了内存占用,并且显示性能更高。5 M, V# Z L: M" W. D( l5 H
: _+ h% I5 W0 j; n1 e三、对比评测& I9 S# v- {* K- W
下面我们通过几幅简单的图例,从几个方面对浩辰ICAD2008、AutoCAD2007以及早期的浩辰ICAD做一下简要的对比。通过对比图例,我们将发现新的文字系统在功能和兼容性上改善是非常突出的。
3 n' H4 e$ R+ n. _/ w1、文字位置
3 P# h* }% _7 v& A2 R
- p$ Y0 V" n7 i0 I/ P
4 r" Z+ w3 r$ k5 u2 `ACAD2007
5 p# p% K2 e% K* q, B7 C0 h" S3 G$ k/ ]- N; L
: t2 M. g I5 e6 f2 O2 B0 j4 F* r
浩辰ICAD2008
/ X0 ~, |5 k4 o% f5 _
4 v7 J" r$ z# |' J4 `/ F
, a; ~$ k" h a! I7 x5 B浩辰ICAD2007(文字明显跑位)6 Z8 b* W" {: ^1 e( ?/ s7 F+ e) Y9 N, h
9 D$ `* e7 c. m' P8 M7 G ~5 ?9 P
5 ]4 {- F, ^" }$ M, z L
2、文字宽度
8 m1 n* ]* Z$ d- Z& c. k+ ~/ I+ I! P

( h, _: h- r* iACAD2007
3 D8 b* q O& k/ s: O- a- F7 S( \' K* v5 ?* v7 [% v. ^$ i

3 k) ^5 Z( b& @6 i h5 M1 T8 f浩辰ICAD2008
) ?9 p0 j/ U' w7 q) D6 L+ L1 P; ^3 [8 o
# Q- K! L" A' p: {
浩辰ICAD2007(宽度误差明显,位置偏下)! k. i6 h7 W+ Q' x, o
?9 l" ~( ~- T8 C
3、自动换行! _ g, E a+ |
" L9 E% ?6 F$ v! |/ a, O
ACAD20071 v: o) F3 \9 l1 ^" K3 ^' q: R8 L
: ?% z' i; }1 \& M1 h& J / t4 n& h! k% Z( G. M; o
浩辰ICAD2008
6 m/ Q# F% q; U8 a: A- k* W
- a4 V( `9 M, g& u. D M$ ?- @( Y$ J8 y1 `
浩辰ICAD2007(换行位置和换行条件存在问题)0 u6 ]7 g* M X" g! ]
4 L7 v9 e# d. z7 B% X$ Y4、段落缩进和制表位, }( Z+ [9 n& i# }

* o( _2 H( h1 E+ b1 i& tACAD2007
: R2 I3 ]2 G9 m/ X7 s& M( n# X. ~6 K0 z! f/ v! [

. h! ^5 [+ p) c6 r浩辰ICAD2008
, D( h: A# d3 c
: E7 g% z: o0 k. d/ d0 s5 Q
, {2 o! ?0 c2 M6 Y; ]! x% g( W( M浩辰ICAD2007(不支持段落缩进)
+ B) A8 m1 @2 { {) X+ ]& s
& G# D- V# a8 u1 p U, J% n5、行间距7 ]5 }7 x) [! O

0 z" P2 R4 [- g* x0 IACAD2007
9 s. B& Y4 J8 O- p/ H2 b3 X' q
2 U7 `& } Y, Z- h8 r
/ _; _: I; y) v- ?- `1 C( `0 B浩辰ICAD20087 [9 K. V5 i( ^3 B; |4 \
, g% A7 m) I! I4 o7 c
! q: _8 S! I! Y+ x3 H& l
浩辰ICAD2007(行间距处理不当,累积误差明显)) H" I" x- ~; k* Q& Q+ y
- ~0 M( C9 D t1 x% I5 ^: |% U6、堆叠文字 E5 [! o P' Z* M0 U% o- [5 X

8 Q) c- b6 m! Q' ~ p3 C* `ACAD2007
7 n# e2 v, b6 m0 J: {( q! u: m; b- o* m. Z" ]( a1 n

* O9 K4 w8 W: t! d3 R" C* ?* D浩辰ICAD2008- x. o- z4 I2 h( T2 m4 g* G) z5 S
) n$ K! h. ]; L2 q- ~2 W% G p) [

3 H, N7 `+ c' U0 L* e$ L浩辰ICAD2007(不支持斜分数,水平对齐存在偏差)9 u) y: R3 x7 D) z
( j& P. f+ H) [* y" X[ 本帖最后由 suno 于 2009-4-29 16:57 编辑 ] |