最佳解决方案
我找到的最佳解决方案是编辑 Crow's foot 模板。这可以使用以下步骤完成(所有引用模板的图表都必须关闭):
- 在 Windows 资源管理器中导航到目录:
%ProgramFiles%\Microsoft Office\Office15\Visio Content\1033\
- 右键单击并编辑 DBCROW_M.VSSX(用于公制)或 DBCROW_U.VSSX(用于美国)。您可能需要先备份它们。
- 如果您还没有在 Visio 中打开开发者模式。 文件->选项->高级然后在常规下选择以开发者模式运行。
- 右键单击要更改的形状,例如属性或主键属性。选择编辑主控形状->编辑主控形状。
- 形状将打开。右键单击形状并选择显示形状表。
(如果您没有此选项,Visio 未处于开发者模式。)
- 在Shape Transform->Height下更改高度公式并输入。
(参见下面的公式。)
- 关闭形状表窗口和形状。系统将提示您更新形状。点击是。
- 保存模板并关闭。
完成这些步骤后,使用模板创建的任何新对象都将具有新的高度。您还可以加载现有图表并将其上的形状更改为新形状。
公式
美国原件:
=GUARD(MAX(0.375 in,TEXTHEIGHT(TheText,TxtWidth),Sheet.6!TxtHeight))'
新:
=GUARD(MAX(0.25 in,TEXTHEIGHT(TheText,TxtWidth)-0.125,Sheet.6!TxtHeight-0.125))'
公制原件:
=GUARD(MAX(9 mm,TEXTHEIGHT(TheText,TxtWidth),Sheet.6!TxtHeight))
新:
=GUARD(MAX(6 mm,TEXTHEIGHT(TheText,TxtWidth)-3,Sheet.6!TxtHeight-3))
正如您在美国看到的那样,我将高度降低了 1/8 英寸,公制降低了 3 毫米。您可以随意调整这些尺寸。
替代解决方案
在开发人员模式下使用 Visio 后,我能够调整现有图表属性周围的额外间距,而无需编辑模板。我基本上对各个形状做了同样的事情。
- 右击选择显示形状表。
- 如上编辑公式。
问题是每个形状都必须这样做,这显然非常耗时,而且让我保存它似乎很奇怪。
信用
我在this post 和Microsoft documentation 上找到了此信息。