CAD控件网页版文字样式
本帖最后由 MxDraw 于 2019-5-24 09:19 编辑增加文字样式
用户可以增加文字样式到数据库,并设置其字体等属性,具体实现js代码如下: function CreateText(){
//返回控件的数据库对象
var database =mxOcx.GetDatabase();
//返回数据库中的文字样式表对象
var mxtst = database.GetTextStyleTable();
//增加新的文字样式
var mxtstr = mxtst.Add("duanceng");
//设置样式
//设置文字的TrueType字体,如果文字样式设置了TrueType字体,就不会使用前面设置shx字体
//参数一为turetype字体名 参数二为是否粗写参数三为是否斜写参数四为windows字符集参数五暂没使用
mxtstr.SetFont("黑体", false, false, 0, 0);
//返回文字的高度
mxtstr.textSize = 5;
//增加新的文字样式
var mxtstr = mxtst.Add("duanceng1");
//设置样式
//设置文字的TrueType字体,如果文字样式设置了TrueType字体,就不会使用前面设置shx字体
//参数一为turetype字体名 参数二为是否粗写参数三为是否斜写参数四为windows字符集参数五暂没使用
mxtstr.SetFont("黑体", false, false, 0, 0);
//返回文字的高度
mxtstr.textSize = 9;
//返回数据库中的文字样式表对象
//设置为当前文字样式
database.CurrentlyTextStyle = "duanceng";
}
得到文字样式名
用户可以得到所有文字样式名,具体实现js代码如下: function GetAllText() {
var database = mxOcx.GetDatabase();
// 得到所有图层名
var sRet = null;
//返回数据库中的文字样式表对象
var spTextStyleTable = database.GetTextStyleTable();
//创建一个遍历层表中所有图层的遍历器
var spIter = spTextStyleTable.NewIterator();
//移动当前遍历器位置
for(;!spIter.Done();spIter.Step(true,true))
{
//返回遍历器当前位置的记录
var spTextStyleRec = spIter.GetRecord();
//符号表记录名属性
var sName = spTextStyleRec.Name;
// 0零层不参加比较
if(sName != "0")
{
if(sRet == null)
sRet = sName;
else
{
sRet = sRet +","+sName;
}
}
}
alert(sRet);
}
删除文字样式
用户可以删除某个文字样式,具体实现js代码如下:function DelText() {
var winWidth = 440;
var winHeight = 140;
var winLeft = (screen.width - winWidth) / 2;
var winTop = (screen.height - winHeight) / 2 - 20;
var str = 'dialogHeight:' + winHeight + 'px;dialogWidth:' + winWidth + 'px;dialogTop:' + winTop + 'px;dialogLeft:' + winLeft + 'px;resizable:yes;center:yes;status:no;'
var rt = window.showModalDialog("Gettext.htm?tmp=" + Math.random(), "输入图层名", str);
var txt;
if (typeof (rt) == "undefined") {
return;
} else {
var arr = rt.split(",");
txt = arr;
}
var database = mxOcx.GetDatabase();
//返回数据库中的文字样式表表对象
var TextStyleTable = database.GetTextStyleTable();
//得到层表中的文字样式表对象
var TextStyleRec = TextStyleTable.GetAt(txt, false);
if (TextStyleRec == null)
return;
//删除对象
TextStyleRec.Erase();
alert("成功删除文字样式");
}
页:
[1]