找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 2090|回复: 17

[求助]:请教:如何改变字体文件*.shp中字的高度及上下位置?

[复制链接]
发表于 2003-5-5 01:36:56 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
请教:如何改变字体文件*.shp中字的高度及上下位置?
以下为其中两个字符,但高度、位置不同,如何修改?
*133,50
2,14,8,(-2,-6),3,4,0b4,1,024,023,022,8,(3,1),040,8,(3,-1),02e,02d,02c,02b,02a,
8,(-3,-1),048,8,(-3,1),026,025,2,8,(8,13),1,8,(0,-24),4,4,2,040,14,8,(-4,-3),0
*134,73
2,024,2,8,(8,6),1,9,(3,1),(2,1),(1,2),(0,2),(-1,2),(-2,1),(-3,1),(-2,0),(-3,
-1),(-2,-1),(-1,-2),(0,-2),(1,-2),(2,-1),(3,-1),(2,0),(0,0),2,8,(2,15),1,8,(0,
-21),2,8,(-6,21),1,8,(0,-21),2,8,(-3,0),1,8,(12,0),2,8,(7,0),2,02c,0
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
发表于 2003-5-5 01:59:18 | 显示全部楼层
在字型133中开头使用3(缩小)代码,比例是4,结尾使用了4(放大)代码,因此这个字符写出来就很小,你可将其去除,即将3,4和4,4删掉,然后将代码数50减4

我看这两个字符原来不是一个字型里的。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 04:33:28 | 显示全部楼层
如果你用天正建筑5.0,字的高度大小问题非常容易解决,
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2003-5-5 18:17:36 | 显示全部楼层
这是一个版本的hztxt.shx的一部分原码:
*BIGFONT 15727,3,0A1,0A3,0A6,0A6,0B0,0F7
*0,4,(null)
96,0,2,0

*1,4
5,2,0BC,0

*2,10
6,2,8,(127,0),14,8,(-127,-127),0

*0BCF5,176
7,1,8,(16,99),1,9,(7,-9),(3,-4),(1,-8),(0,0),2,8,(-15,-32),1,9,(6,-12),(21,43),(0,0),
2,8,(7,23),1,9,(0,-12),(-1,-23),(-3,-23),(-5,-15),(-7,-10),(-10,-13),(0,0),2,8,(27,85),
1,9,(64,8),(-4,0),(-9,-2),(0,0),2,8,(-2,24),1,9,(7,-6),(2,-2),(1,-4),(0,0),2,8,(-28,17),
1,9,(4,-5),(-2,1),(2,-23),(1,-11),(1,1),(1,-10),(2,-10),(1,-6),(2,-8),(2,-8),(3,-9),(4,-10),
(4,-6),(4,-6),(5,-6),(3,-2),(-1,29),(-1,-26),(0,0),2,8,(-8,68),1,9,(-1,-7),(-6,-12),(-6,-11),
(-6,-10),(-9,-10),(-5,-6),(-8,-7),(0,0),2,8,(13,63),1,9,(-23,-4),(0,0),2,8,(1,-11),
1,9,(1,-31),(0,6),(20,2),(-4,0),(3,25),(2,-4),(-21,-4),(0,0),7,2,0

*0BDF5,172
7,1,8,(38,125),1,9,(0,-6),(-10,-25),(-6,-13),(-10,-17),(0,0),2,8,(19,37),1,9,(25,3),(0,0),
2,8,(-3,-20),1,9,(-29,-7),(0,0),2,8,(30,-17),1,9,(-33,-7),(0,0),2,8,(17,25),1,
9,(-1,-2),(0,-52),(-5,-4),(22,18),(0,0),2,8,(31,87),1,9,(-1,-7),(1,1),(-5,-15),(0,0),
2,8,(-14,4),1,9,(2,-6),(2,-34),(-1,6),(38,4),(-3,0),(3,33),(3,-4),(-41,-5),(0,0),
2,8,(0,-15),1,9,(27,4),(0,0),2,8,(-13,-19),1,9,(2,-4),(0,-64),(-2,5),(2,8),(0,0),
2,8,(-24,47),1,9,(3,-10),(1,-33),(-1,6),(0,12),(0,0),2,8,(0,15),1,9,(51,6),(-2,3),(-1,-6),
(-3,-21),(-2,-9),(-2,-6),(-1,-1),(-9,11),(9,-9),(0,0),7,2,0

1.第三行开始的96代表字高,其意义应该是,文件中代码每96单位表示输出高度为1单位。这样就可以比较出各种字体定义的差别,如小字体一般为21,如果移植,需要使用特殊代码3和4进行换算。
2.字符“1”和“2”(gbcbig好像中为142及143)的定义控制字符的起点位置及间距,后面字符全部以“7,1,”开始,以“7,2,0”结束。
a)字符“1”的意义为:保存当前“笔”位置(文字插入点),抬笔,下沉11单位(0BC),引用字符将使用这个新的位置为起点定义形。
b)字符“2”的意义为:提取保存的“笔”位置,抬笔,向右移动127单位(下一字符插入点),如果是竖排(14),在将插入点向左向下各127单位(其实就是向下)。
可以看出,如果使用了这个引用,将很容易调整对齐中西文基线(修改0BC)。
3.对于个别字符的移植,可以参照这种方法,在字符定义的开始增加“2,0nC,”或“2,0n4,”下沉或上抬代码起点。

以上是泛泛而谈,希望对大家有些帮助。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 20:03:26 | 显示全部楼层
这些字形原文件可真招人喜欢,不知道什么地方可以找到。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 21:15:28 | 显示全部楼层
用字体反编译软件来反编译字体就能得到啦,27182818284 身为支柱会员这一点不会不知道吧。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 21:19:46 | 显示全部楼层
咦!我只找到了一个反编译英文字体的程序,没有找到可以反编译大字体的程序啊!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 21:23:45 | 显示全部楼层
用shxviewer啊,论坛有提供的哦。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 21:29:08 | 显示全部楼层
谢谢令狐大侠!到可以搜索下载的时间,我把这个shxviewer弄回家里。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-5 21:34:01 | 显示全部楼层
是在下载中心啦,刚才说错了。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-5-6 15:08:33 | 显示全部楼层
谢谢各位高手 !
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

 楼主| 发表于 2003-5-6 16:16:01 | 显示全部楼层
请问活雷锋,如何将134字型的大小改为同133字型,谢谢
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-5-7 12:48:02 | 显示全部楼层
这个软件就很好啊,我提供给你
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2003-7-30 17:06:24 | 显示全部楼层
是否能请“青铜长老”朋友解释一下下面7行每行及每个数值的意义
*BIGFONT 15727,3,0A1,0A3,0A6,0A6,0B0,0F7
*0,4,(null)
96,0,2,0

*1,4
5,2,0BC,0

*2,10
6,2,8,(127,0),14,8,(-127,-127),0
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

已领礼包: 6530个

财富等级: 富甲天下

发表于 2003-7-31 13:08:39 | 显示全部楼层
*BIGFONT 14341,3,0A1,0A3,0A6,0AA,0B0,0F7
包含成百上千种字符的字体,其处理方式与包含 ASCII 字符集最多 256 个字符的字体处理方式不同。除了使用更加复杂的文件搜索技术之外,AutoCAD 需要某种方法来用双字节代码表示字符和单字节代码。这两个条件可用大字体文件开始的特殊代码来满足。
大字体形定义文件的第一行必须为:
*BIGFONT nchars,nranges,b1,e1,b2,e2,...
其中,nchars 是此集合中近似的字符定义数量。如果此数值过大,且误差超过百分之十,则速度或文件尺寸就会受损害。可以用行中余下的空间标识双字节代码开始区域的特殊字符代码(换码代码)。
nranges 指出有多少个连续区间中的数字用作换码代码;b1、e1、b2、e2 等定义了每个区间的开始和结束代码。
在 *BIGFONT 行后,除字符代码(形编号)最大可以为 65535 之外,字体定义与普通 AutoCAD 字体定义相似。

*0,4,(null)
96,0,2,0

字体必须包括特殊的形编号 0,以提供字体本身的信息。其格式如下:
*0,4,font-name
above,below,modes,0
其中,above 指定大写字母从基线往上扩展的矢量长度,below 指出小写字母从基线下降的距离。基线的概念与纸面书写时的基准线相似。这些值定义了基本字符尺寸,用作 TEXT 命令中指定高度的比例因子。
modes 字节对水平字体应该为 0,对双向(水平或垂直)字体为 2。特殊命令代码 00E (14) 仅当 modes 为 2 时有效。

*1,8
5,2,0BC,14,8,(-64,-96),0

形1,用8字节描述。
5保存当前位置,2提笔(以下空画),0BC向C方向(下)移动B单位(用于协调中西文基线),14如果是竖排,执行以下代码,8,(-64,-96)向左水平移动笔64单位,向下移动96单位,0形描述结束。

*2,10
6,2,8,(127,0),14,8,(-127,-127),0

形2,用10字节描述。
6提取前面保存位置,2提笔(以下空画),8,(127,0)向右水平移动笔127单位,14如果是竖排,执行以下代码,8,(-127,-127)向左水平移动笔127单位,向下移动127单位,0形描述结束。

形1与形2是两个特殊字符(Gbcbig.shx定义为形132和形133),一般成对出现,用于调整字体的插入基点。小字体形文件定义时将横排文字插入点定在左下,将竖排文字插入点定在中上,而一般汉字形文件没有对竖排文字插入点进行修改,即没有形1中代码14以后字段,所以在竖排文字时不能进行中西文混排。

另外可参见http://www.xdcad.net/forum/showt ... 21485#post321485。

本帖也作为http://www.xdcad.net/forum/showt ... d=75604的回复。
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

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

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2025-9-10 23:17 , Processed in 0.446080 second(s), 61 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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