我们最近将企业架构师升级到版本12,当我打开我们的图表时,所有名称现在都包裹到元素的宽度。在它之前将服务器名称写在元素下的一行中,即使名称比元素本身长,但现在它们将换行到元素的宽度。
如何让它在一行中显示元素的名称而不是包装?
编辑:如果我们在名称中有短划线,这似乎是一个问题。如果我将破折号更改为下划线,则它不会换行。但我们真的需要名字中的破折号。
编辑#2:这是我的问题的屏幕截图。左边的一个有破折号和包裹,右边的一个有下划线并且没有包裹。其他一切都是一样的。
答案 0 :(得分:1)
您需要打开Features and Properties/Feature...
你可以为个别元素切换它。要在全球范围内执行此操作,您需要编写此脚本:
dia = Repository.GetDiagram... # get the diagram itself
for do in dia.DiagramObjects {
do.ElementDisplayMode = 1 # longest, or 3: truncate (2 = wrap)
do.Update()
}
修改:仅适用于类的功能,而不适用于其名称。 EA在破折号和空格处包装名称(如果矩形太小)(最终还有几个字符?)。这不能改变。您可以通过以下方式编写脚本:
dia = repository.GetDiagram.... # load the diagram
for do in dia.diagramObjects {
e = repository.getElementById(do.ElementId)
width = stringBitWidth(e.Name) # calc width of text in screen pixels; use your phantasy
currWidth = do.right - do.left
extend = (width - currWidth) / 2
do.Left -= extend
do.Right += extend
do.Update()
}