返回介绍

绘制文字

发布于 2023-08-09 23:10:34 字数 6462 浏览 0 评论 0 收藏 0

在CAD设计时,需要绘制文字,用户可以设置设置绘制文字的高度等属性。

主要用到函数说明:

函数名:_DMxDrawX::DrawText

绘制一个单行文字。详细说明如下:

参数说明
DOUBLE dPosX>文字的位置的X坐标
DOUBLE dPosY文字的位置的Y坐标
BSTR pszText文字内容字符串
DOUBLE dHeight文字高度
DOUBLE dRotation文字的旋转角度
SHORT horizontalMode文字的水平对齐方式,0=kTextLeft,1=kTextCenter,2=kTextRight
SHORT verticalMode文字的竖直对齐方式,1=kTextBottom,2=kTextVertMid,3=kTextTop

函数名:_DMxDrawX::AddTextStyle1

向数据库中增加一个文字样式。详细说明如下:

参数说明
BSTR pszName文字样式名称
BSTR pszFileNameshx文件名
BSTR pszBigFontFileNamebig shx文件名
DOUBLE dXScale文字宽度缩放比例

C#中实现代码说明:

private void DrawText()
{
    //清空当前显示内容
    axMxDrawX1.NewFile();
    //把颜色改回黑白色
    axMxDrawX1.DrawCADColor = 0;
    //创建一个图层,名为"TextLayer"
    axMxDrawX1.AddLayer("TextLayer");
    //设置当前图层为"TextLayer"
    axMxDrawX1.LayerName = "TextLayer";
    //绘制一个单行文字
    //参数一为文字的位置的X坐标 ;参数二为文字的位置的Y坐标 ;参数三为文字内容字符串
    //参数四为文字高度;参数五为文字的旋转角度
    //参数六为文字的水平对齐方式,0=kTextLeft,1=kTextCenter,2=kTextRight
    //参数七文字的竖直对齐方式,1=kTextBottom,2=kTextVertMid,3=kTextTop
    //-------------------------------------------------------------------------------------------------
    //写一个文字,0,1是左对齐.
    axMxDrawX1.DrawCADColor = 65280;
    axMxDrawX1.DrawText(0, 1900, "梦想绘图控件3.0 www.mxdraw.com", 100, 0, 0, 1);
    //---------------------------------------------------------------------------------------------------
    //写一个文字,2,1是右下对齐.
    axMxDrawX1.DrawCADColor = 4556677;
    axMxDrawX1.DrawText(3000, 2100, "梦想绘图控件3.0 www.mxdraw.com", 100, -20, 2, 1);
    //--------------------------------------------------------------------------------------------------
    //按指定样式绘制文字
    axMxDrawX1.AddTextStyle1("MyTextStyle", "italicc.shx", "gbcbig.shx", 0.7);
    axMxDrawX1.TextStyle = "MyTextStyle";
    axMxDrawX1.DrawCADColor = 255;
    axMxDrawX1.DrawText(0, 3000, "梦想绘图控件3.0 www.mxdraw.com", 100, 0, 0, 1);
    //--------------------------------------------------------------------------------------------------
    //写一个TureType字体
    axMxDrawX1.AddTextStyle2("MyTrueTypeStyle", "黑体", 0.7);
    axMxDrawX1.TextStyle = "MyTrueTypeStyle";
    axMxDrawX1.DrawText(0, 3150, "梦想绘图控件3.0 www.mxdraw.com", 100, 0, 0, 1);
    axMxDrawX1.ZoomAll();
    axMxDrawX1.UpdateDisplay();
}

效果展示:

用户可以通过点击绘制文字按钮,CAD控件视区将显示在C#中设置好的文字。如下图所示:

c#drawtext.png

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文