You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Visio形状中为指定文本设置粗体加下划线?

Visio文本格式设置问题与解决方案

需求说明

仅需为PRI_SITETXT和SEC_SITETXT设置粗体+下划线,其余文本仅保留粗体。

现有代码

Shape SITEINFO_BOX = SITEINFO.DrawRectangle(1, 14.5, 11, 2.5);
SITEINFO_BOX.CellsU["LinePattern"].FormulaU = "0";
var PRI_SITETXT = "Primary SITE POC:";
var SEC_SITETXT = "Secondary SITE POC:";
            
    //SITEINFO_BOX.Characters.CharProps[(short)VisUIIconIDs.visIconIXUNDERLINE] = 52;

var PRI_POC = PRI_SITETXT + "\n" + TENANT_DATA_PARAM[0].pri_poc_name + "\n" +       TENANT_DATA_PARAM[0].pri_poc_email + "\n" + TENANT_DATA_PARAM[0].pri_poc_number;
var SEC_POC = SEC_SITETXT + "\n" + TENANT_DATA_PARAM[0].sec_poc_name + "\n" + TENANT_DATA_PARAM[0].sec_poc_email + "\n" + TENANT_DATA_PARAM[0].sec_poc_number;

SITEINFO_BOX.Text = PRI_POC + "\n" + "\n" + SEC_POC;

SITEINFO_BOX.CellsU["VerticalAlign"].FormulaU = "0"; // 0 = SEND TEXT TO TOP OF SHAPE
SITEINFO_BOX.CellsU["Para.HorzAlign"].FormulaU = "0";  // 0 

var POC_CHARS = SITEINFO_BOX.Characters;



var TARGET_ROW = POC_CHARS.CharPropsRow[(short)VisCharsBias.visBiasLetVisioChoose];

POC_CHARS.Begin = 0;
POC_CHARS.End = 17;
            POC_CHARS.set_CharProps((short)VisCellIndices.visCharacterColor, (short)VisDefaultColors.visBlack);
            TARGET_ROW = POC_CHARS.CharPropsRow[(short)VisCharsBias.visBiasLetVisioChoose];
            SITEINFO_BOX.CellsSRC[(short)VisSectionIndices.visSectionCharacter,
                         TARGET_ROW,
                         (short)VisCellIndices.visCharacterStyle].FormulaU = "21";

POC_CHARS.Begin = 59;
POC_CHARS.End = 78;
            POC_CHARS.set_CharProps((short)VisCellIndices.visCharacterColor, (short)VisDefaultColors.visBlack);
            TARGET_ROW = POC_CHARS.CharPropsRow[(short)VisCharsBias.visBiasLetVisioChoose];
            SITEINFO_BOX.CellsSRC[(short)VisSectionIndices.visSectionCharacter,
                         TARGET_ROW,
                         (short)VisCellIndices.visCharacterStyle].FormulaU = "21";

问题概述

希望所有文本为粗体,同时PRI_SITETXT和SEC_SITETXT额外添加下划线。尝试通过手动设置后查看形状表的Char.Style值编写代码但未成功,仅能实现全文本粗体或全文本粗体加下划线,无法单独为指定文本设置差异化格式。

解决方案

通过指定字符样式的公式值实现差异化格式:

(short)VisCellIndices.visCharacterStyle].FormulaU = "21" // value 21 = BOLD + UNDERLINE

已修改上述现有代码以应用该方案,针对PRI_SITETXT和SEC_SITETXT对应的文本区间设置样式值21(粗体+下划线),其余文本默认保持粗体格式。


内容的提问来源于stack exchange,提问作者Calibus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.07 07:38:12