captha 发表于 2009-7-26 22:57:00

怎么让文字和它附近的直线对齐,并保持适当距离

本帖最后由 作者 于 2009-7-27 9:19:40 编辑

请教各位大侠,我有很多文字,每行文字旁边有一个短直线,直线与短直线的角度都不一样,怎么让程序自动让黄色文字和旁边的短直线对齐,并保持一定距离(避免文字和直线重叠)。如下图所示让所有的黄色文字都和文字旁边的红色直线对齐

顾茗思意 发表于 2024-7-10 08:39:26

你好,请问现在 自动对齐并保持距离 作成了么

雪山飞狐_lzh 发表于 2009-7-27 00:00:00

<p>用图形描述一下</p>

cqy 发表于 2009-7-27 23:46:00

<p>可以试试按以下几步完成:</p><p>1、建立文字选择集提取各插入点;</p><p>2,分别以各插入点建立选择集提取相应直线属性;</p><p>3,设置文字插入点及角度重新插入该字。</p>

captha 发表于 2009-7-28 21:07:00

<p>致侠客cqy:有点疑惑请教您,怎么以文字的插入点提取直线的属性呢,文字和直线分别是独立的实体</p>

captha 发表于 2009-7-28 21:10:00

致侠客cqy:有些疑惑请教您,文字和直线分别是各自独立的实体,怎么用文字插入点来建立选择集提取直线的属性呢

StartMe 发表于 2009-7-28 21:46:00

<p>写入字体时以直线端点写入,然后字体旋转与线相同角度。如果偏要有一点距离的话,可以试着offset后删除原字体。</p><p>自己没实际做,仅供参考。</p>

captha 发表于 2009-7-29 09:16:00

<p>请教侠客StartMe:我编的这个程序是对现有的图形(该图形文字和直线没有对齐)进行修改,因为有多个直线和文字,怎么让各个文字分别与旁边的直线建立对应关系呢,并按对应的直线进行调整</p>

cqy 发表于 2009-7-29 19:54:00

<p>以文字插入点pt在子程序A中建立选择集</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; X(1) = pt(1) + 0.1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;X(0) = pt(0) + 0.1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;X(2) = 0<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Y(1) = pt(1) - 0.1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Y(0) = pt(0) - 0.1<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Y(2) = 0</p><p>调用</p><p>&nbsp;&nbsp;&nbsp;&nbsp; Call ThisDrawing.A</p><p>新文字插入点及角度要计算(与原点相对位置)</p><p></p>

StartMe 发表于 2009-7-29 21:27:00

<p>如果你现有的图形中,文字和直线毫无规律可言,那你这样的程序根本无法实现。</p><p>看你的附图,如果你能把那些相关的线做成选择集,不要包含图中无用的其他直线,把那些相关的文字做成个选择集的话,那么你可以这样:</p><p>因为看你图片,一条线可能对应两个文字,所以一定要遍历文字,</p><p>遍历所有这些涉及的文字,得到其中间点,然后在所有直线中遍历,挑出所有的直线中,其中间点距离这个文字的中间点最近的那条直线,得到直线角度,更改文字与之同角度。</p><p>如果图中这些文字、线够多的话,那你这程序运行速度。。。。。。。。。等着吧。</p><p>仅供参考。</p>

雪山飞狐_lzh 发表于 2009-7-29 23:44:00

<p>以文字中心,不断扩大范围构建选择集</p>
页: [1] 2
查看完整版本: 怎么让文字和它附近的直线对齐,并保持适当距离