更改UMLGraph中的EdgeFontSize

更改UMLGraph中的EdgeFontSize,uml,umlgraph,Uml,Umlgraph,我尝试使用@opt edgefontsize更改UMLGraph中关联文本的字体大小,但似乎使用了默认字体大小 请注意,选项@opt edgefontname工作正常 我在UMLGraph doclet版本R5\u 7\u 2-32-g40b5a6上 这里是一个演示-所有字体都增加到22种,但关联文本仍然很小 /** * @hidden * @opt postfixpackage * @opt nodefontclassname "Arial Bold" * @opt nodefon

我尝试使用
@opt edgefontsize
更改UMLGraph中关联文本的字体大小,但似乎使用了默认字体大小

请注意,选项
@opt edgefontname
工作正常

我在
UMLGraph doclet版本R5\u 7\u 2-32-g40b5a6上

这里是一个演示-所有字体都增加到22种,但关联文本仍然很小

/**
 * @hidden  
 * @opt postfixpackage
 * @opt nodefontclassname "Arial Bold"
 * @opt nodefontclassabstractname "Arial Italic"
 * @opt nodefontclasssize 22
 * 
 * @opt nodefontname "Arial"
 * @opt nodefontabstractname "Times New Roman Italic"
 * @opt nodefontsize 22
 * 
 * @opt nodefonttagname "Courier New Italic"
 * @opt nodefonttagsize 22
 * 
 * @opt nodefontpackagename "Comic Sans MS"
 * @opt nodefontpackagesize 22
 * 
 * @opt edgefontname "Courier New Italic"
 * @opt edgefontsize 22
 * @opt types 
 */
 class UMLOptions{} 



/**
 * @opt attributes  
 * @assoc  " "  " " parent_id B  
 */

class A {
public int id;
}

/**
 * @opt attributes    
*/  
class B {
public int id;
}
结果


如果打开UMLGraph包的类选项(fileoptions.java),可以看到edgeFontSize声明为

双边缘尺寸=10

因此,它被设置为特定的常数值。另外,您还可以看到edgeFontName声明为

字符串edgeFontName=Font.DEFAULT\u Font

因此edgeFondSize有一个固定值(10)作为默认字体大小,这就是为什么将其设置为22时大小没有改变的原因。另一方面,edgeFontName没有固定的特定值,这就是为什么当您选择“Courier New Italic”或“Arial”等时,它会发生变化

总之,解决此问题的一种方法是为edgeFontSize定义另一个值(例如22),或者以与edgeFontName类似的方式声明edgeFontSize。这是你的电话


我真的希望,这会有帮助

因此,基本上不可能在不重新编译UMLGraph的情况下更改字体大小,正如您所建议的,edgeFontSize有一个默认值,在您的情况下需要更改,并且由于您需要能够更改每个图表的大小,我建议您以声明edgeFontName的类似方式声明edgeFontSize,并运行新的UMLGraph版本。您能否提供一些如何构建UMLGraph的信息,我只安装到现在。为了从顶部构建项目(如果您想添加一些新功能),您可以使用IDE(例如Eclipse),将UMLGraph作为项目导入,并在所做更改后运行maven构建。至于edgeFontSize的问题,我意识到应该在运行时设置Options类。因此,如果edgeFontSize设置为所需的值,并且在运行时设置了选项,则应该可以解决问题。请指出你面临的任何错误。