查了下资料如下
创新互联建站主要从事成都做网站、网站制作、网页设计、企业做网站、公司建网站等业务。立足成都服务乌翠,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:13518219792
这里是资料的来源
物理字体和逻辑字体
Java Platform 可以区分两种字体:物理 字体和逻辑 字体。
物理 字体是实际的字体库,包含字形数据和表,这些数据和表使用字体技术(如 TrueType 或 PostScript Type 1)将字符序列映射到字形序列。Java Platform 的所有实现都支持 TrueType 字体;对其他字体技术的支持是与实现相关的。物理字体可以使用字体名称,如 Helvetica、Palatino、HonMincho 或任意数量的其他字体名称。通常,每种物理字体只支持有限的书写系统集合,例如,只支持拉丁文字符,或者只支持日文和基本拉丁文。可用的物理字体集合随配置的不同而有所不同。要求特定字体的应用程序可以使用 createFont 方法来捆绑这些字体,并对其进行实例化。
逻辑 字体是由必须受所有 Java 运行时环境支持的 Java 平台所定义的五种字体系列:Serif、SansSerif、Monospaced、Dialog 和 DialogInput。这些逻辑字体不是实际的字体库。此外,由 Java 运行时环境将逻辑字体名称映射到物理字体。映射关系与实现和通常语言环境相关,因此它们提供的外观和规格各不相同。通常,为了覆盖庞大的字符范围,每种逻辑字体名称都映射到几种物理字体。
同级的 AWT 组件(如 Label 和 TextField)只可以使用逻辑字体。
有关使用物理字体或逻辑字体的相对优势和劣势的讨论,请参阅 Internationalization FAQ 文档。
textarea.setFont(new Font("黑体",Font.BOLD,32));
指定字体名称、样式和磅值大小
这三个你都是可以单独修改的,
字体:可以把黑体改成楷体或其他
大小:磅值改成30或其他
颜色:textarea.setForeground(Color.RED);
API上没看到有单独对Font每一项进行单独设置的,都是在new的时候对三个进行赋值。
我只能帮你这么多了
String typeface = "宋体";
if(e.getSource == b1) {
typeface = "黑体";
}else if(e.getSource == b2) {
typeface = "楷体";
} else {
typeface = "宋体";
}
ta.setFont(new Font(typeface, Font.PLAIN, 20));
这样试试看,如果还是不行的话就按下面看看系统自带字体是否有黑体和楷体。
//获取系统中可用的字体的名字
GraphicsEnvironment e = GraphicsEnvironment.getLocalGraphicsEnvironment();
String[] fontName = e.getAvailableFontFamilyNames();
for(int i = 0; ifontName.length ; i++) {
System.out.println(fontName[i]);
}
你是直接用drawString打印的吗?drawString不好,你需要在Applet中添加一个Panel,在Panel上就可以设置字体了
用Java代码 利用Typeface 引入字体, 你要有字体文件
private TextView start;
................
start = (TextView)this.findViewById(R.id.start);
................
Typeface tf = Typeface.createFromAsset(this.getAssets(), "UKIJ3D.ttf");
start.setTypeface(tf);
其中 UKIJ3D.ttf 为你的字体文件 要把它放在assets里面