知识库 / C#开发 / 详情
如何绘制多行文字?
如何绘制多行文字?
C#开发|黄洪辉|2018-05-16 09:39
回答:

主要用到函数说明:


_DMxDrawX::DrawMText


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


参数 说明

DOUBLE dPosX

多行文字位置的X坐标

DOUBLE dPosY

多行文字位置的Y坐标

BSTR pszContents

多行文字的内容

DOUBLE dHeight

多行文字的高度

DOUBLE dWidth

多行文字的显示宽度

DOUBLE dRotation

多行文字的旋转角度

SHORT iAttachment

多行文字的对齐方式

可以取值

enum AttachmentPoint { kTopLeft = 1, kTopCenter = 2, kTopRight = 3, kMiddleLeft = 4, kMiddleCenter = 5, kMiddleRight = 6, kBottomLeft = 7, kBottomCenter = 8, kBottomRight = 9,


_DMxDrawX::AddTextStyle2


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


参数 说明

BSTR pszName

文字样式名称

BSTR pszTrueTypeFontName

TrueType字体名

DOUBLE dXScale

文字宽度缩放比例


C#中实现代码说明:


private void DrawMText()
{
    //清空当前显示内容
    axMxDrawX1.NewFile();
    //把颜色改回黑白色
    axMxDrawX1.DrawCADColor = 0;
    //绘制多行文字
    //参数一为多行文字位置的X坐标  ;参数二为多行文字位置的Y坐标  ;参数三为多行文字的内容
    //参数四为多行文字的高度 ;参数五为多行文字的显示宽度
    //参数六为多行文字的旋转角度
    //参数七为多行文字的对齐方式
    axMxDrawX1.DrawCADColor = 255;
    axMxDrawX1.DrawMText(100, 100, "cad绘图\\P梦想软件", 15, 500, 0.0, 7);
    axMxDrawX1.DrawCADColor = 16711680;
    axMxDrawX1.DrawMText(0, 0, "\\A2;平方方法 :m{\\H0.3x;\\S 2^;}", 15, 100, 0.0, 7);
    //按指定样式绘制文字
    axMxDrawX1.AddTextStyle1("MyTextStyle", "italicc.shx", "gbcbig.shx", 0.7);
    axMxDrawX1.TextStyle = "MyTextStyle";
    axMxDrawX1.DrawCADColor = 65280;
    axMxDrawX1.DrawMText(0, 50, "\\A2;平方方法 :m{\\H0.3x;\\S 2^;}", 15, 100, 0.0, 7);
    //--------------------------------------------------------------------------------------------------
    //写一个TureType字体
    axMxDrawX1.AddTextStyle2("MyTrueTypeStyle", "黑体", 0.7);
    axMxDrawX1.TextStyle = "MyTrueTypeStyle";
    axMxDrawX1.DrawCADColor = 4556677;
    axMxDrawX1.DrawMText(0, 100, "\\A2;平方方法 :m{\\H0.3x;\\S 2^;}", 15, 100, 0.0, 7);
    axMxDrawX1.ZoomAll();
    axMxDrawX1.UpdateDisplay();
}
相关问题
如何动态绘制样条线?
怎么动态绘制多段线?
如何动态绘制带面积周长的圆?
如何动态绘制带面积周长的矩形框?
如何绘制矩形框?
怎么绘制一个标记?
如何实现嵌套打印?
怎么设置点样式?
如何动态绘制一个矩形框?
如何绘制一个箭头?
梦想CAD是专业的CAD插件(控件),可轻松在网页、手机及BS/CS程序中浏览编辑DWG文件,不需安装AutoCAD即可运行。经十余年累积已非常稳定可靠,有关键的空间搜索算法,并使用汇编优化,可同时处理50万级实体,有非常高的图形显示和处理效率。
技术服务
TEL:400-888-5703
185-8173-1060
客服I QQ: 3570505660
技术I QQ: 827867134
技术II QQ:6884123
产品购买
TEL:156-8136-8971
QQ:710714273
用户交流
控件QQ交流群1:73281982
控件QQ交流群2:112199959
MxCAD软件群 1:515771658
技术I:QQ
827867134
客服I:QQ
3570505660
销售QQ
710714273
联系电话400-888-5703