VDF常见问题整理(二十七):如何创建带字符串的线型

VectorDraw Developer Framework试用版下载


    点开本篇文章,是否对矢量图形工具感兴趣呢看看最新的矢量图形工具测评吧!点击此处>>即可直达哦!

问:

   我是否可以创建一种线型,其中线穿过文本,例如:———————我的文本在这里—- ——————-。这种线型应该如何创建/p>

答:

    为了使文本不被线段覆盖,您需要添加一个隐藏的线段,其大小与线型中的文本长度相同或稍大。具体请参见下面的代码和说明:

private void button10_Click(object sender, EventArgs e){    vdDocument thisDocument = vdFramedControl1.BaseControl.ActiveDocument;    vdLineType lt = thisDocument.LineTypes.Add("MyCustomLineType");     lt = thisDocument.LineTypes.Add("MyCustomLineType");    lt.Comment = "MyCustomLineType";     lt.Segments.AddItem(new LineTypeSegment(1));    lt.Segments.AddItem(new LineTypeSegment());    lt.Segments[1].ShapeText = " Some Text Goes Here ";    lt.Segments[1].ShapeStyle = thisDocument.TextStyles[0].GrTextStyle;    lt.Segments[1].ShapeOffsetY = -.125;    lt.Segments[1].Flag = LineTypeSegment.LineTypeElementType.TTF_TEXT;    lt.Segments[1].ShapeScale = .25;      // 这是计算文本长度的方法    vdText txt = new vdText(thisDocument, lt.Segments[1].ShapeText, new gPoint(), lt.Segments[1].ShapeScale); //与文字相同    txt.Style = thisDocument.TextStyles[0]; //与文字相同    txt.Update();    double txtwidth = txt.BoundingBox.Width;     txt = null;  //IS NOT NEEDED any more        lt.Segments[1].ShapeOffsetX = txtwidth * 0.1 / 2.0; // 在文字前加5%空格        // 在文本上方添加不可见的段,占文本长度的110%    lt.Segments.AddItem(new LineTypeSegment(-1.0 * (txtwidth+ 2.0*lt.Segments[1].ShapeOffsetX)));// 在文本之前和之后添加一个空格,使不可见部分变大    lt.Segments.AddItem(new LineTypeSegment(1));    lt.Update();     //用于显示    vdLine manuallyDrawnPline = new vdLine(thisDocument, new gPoint(), new gPoint(25, 5));    thisDocument.Model.Entities.AddItem(manuallyDrawnPline);    manuallyDrawnPline.LineType = lt;    manuallyDrawnPline.Update();    manuallyDrawnPline.Invalidate();     thisDocument.CommandAction.Zoom("E", 0, 0);}

    对于以上问答,如果您有任何的疑惑都可以在评论区留言,我们会及时回复。此系列的问答教程我们会持续更新,如果您感兴趣,可以多多关注本教程。

相关资料推荐:

  • 如何排除GroundSurface对象的三角形区域/strong>

  • 复杂自定义对象的入门指南

  • 点击此处还有VectorDraw Developer Framework的demo示例等着你来体验哦!


    如果您对想要购买正版授权VectorDraw Developer Framework(VDF),可以联系在线客服>>咨询相关问题。

标签:

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2019年9月18日
下一篇 2019年9月18日

相关推荐

发表回复

登录后才能评论