AutoCAD2013的多行文字去除格式C#代码(根据论坛其他老师的代码改编的)
public static string GetMTextContents(string str)//有问题及时反馈啊{
str = Regex.Replace(str, @"\\\\", ((char)1).ToString());//替换双斜杠
str = Regex.Replace(str, @"\\{", ((char)2).ToString());//替换\{
str = Regex.Replace(str, @"\\}", ((char)3).ToString());//替换\}
str = Regex.Replace(str, @"\\pxi(.[^;]*);", "", RegexOptions.IgnoreCase);// 删除段落缩进格式
str = Regex.Replace(str, @"\\pt(.[^;]*);", "", RegexOptions.IgnoreCase);//删除制表符格式
str = Regex.Replace(str, @"\\S(.[^;]*)(\^|#|\\)(.[^;]*);", "", RegexOptions.IgnoreCase);//删除堆迭格式
str = Regex.Replace(str, @"(\\F.*?;)|(\\C.*?;)|(\\H.*?;)|(\\T.*?;)|(\\Q.*?;)|(\\W.*?;)|(\\A.*?;)", "", RegexOptions.IgnoreCase);//删除字体、颜色、字高、字距、倾斜、字宽、对齐格式
str = Regex.Replace(str, @"\\L|\\O|\\K","", RegexOptions.IgnoreCase);//删除上、中、下划线。
//str = Regex.Replace(str, @"\\~", "", RegexOptions.IgnoreCase);//删除不间断空格格式
str = Regex.Replace(str, @"\\P", "", RegexOptions.IgnoreCase);//删除换行符格式
str = Regex.Replace(str, "{|}", "");
str = Regex.Replace(str, ((char)1).ToString(),"\\");//将前面替换了的双斜杠变成但斜杠
str = Regex.Replace(str, ((char)2).ToString(), @"{");
str = Regex.Replace(str, ((char)3).ToString(), @"}");
return str;
}
4551986 发表于 2023-7-13 16:43
.COM连接AutoCAD没有这个属性吧
有没有可能,这是.net区?com你去activex区啊 本帖最后由 mokson 于 2023-7-13 09:17 编辑
与它本身的 ”删除字符格式“,有什么区别吗?
mokson 发表于 2023-7-13 09:12
与它本身的 ”删除字符格式“,有什么区别吗?
大哥您这个页面从哪里调出来? 本帖最后由 mokson 于 2023-7-13 14:00 编辑
在多行文字的编辑状态下,选中多行文字,然后右击就出来了 。 mokson 发表于 2023-7-13 13:59
在多行文字的编辑状态下,选中多行文字,然后右击就出来了 。
你这不行,字体有替换时你在属性侧边栏看看内容里面是不是有一堆字体的控制符,比如用外部程序读取到其他软件里面用就必须要替换掉才行。 本帖最后由 d1742647821 于 2023-7-13 16:14 编辑
做了太多无用的工作,
mtext.Context=mText.Text;
一句就能清除格式 d1742647821 发表于 2023-7-13 16:11
做了太多无用的工作,
mtext.Context=mText.Text;
一句就能清除格式
.COM连接AutoCAD没有这个属性吧 d1742647821 发表于 2023-7-13 17:49
有没有可能,这是.net区?com你去activex区啊
哦,:lol
页:
[1]