gpt4 book ai didi

java - 字体更换器应用程序。有些字体无法使用

转载 作者:行者123 更新时间:2023-12-01 14:31:48 25 4
gpt4 key购买 nike

我一直计划制作一个字体更改应用程序,最终安装在我的手机上。但我目前遇到了一些困难,因为某些字体无法正常工作。我认为这实际上可能是我的代码。我可能错过了一些东西,因为我看到了另一个字体更改器代码并且它工作得很好。所以我想知道的是为什么其中一些字体不起作用。我应该调用某种方法吗?我对此做了一些研究,发现我必须使用 import java.awt.Font;这使得某些字体可以工作。我可以添加自定义字体(稍后会添加),但我希望我的电脑上可用的所有字体都可以在此应用程序中使用。

这是我的代码:

import java.awt.*;
import java.awt.Font.*;
import java.awt.event.*;
import java.applet.Applet;

public class FontChangerForAndroid extends Applet implements ActionListener
{

Button Change;
Button TestOutput;
Choice Fonts;
TextField TestTxt;
Label text;
/***
* Okay, this works so far. Not sure if the comic one isnt working. Or if I just spelled it wrong. I will have to
* look it up in a java Font libaray.
*
* I basically want to make this a function on my entire phone. So i'll have to change it to an android app.
* ( I hope it has the Rosemarry font)
* While I'm practicing with this app, I'll add a text box that will let me change the label. Or enter the words
* in the app.
*
*/
public void init(){

setLayout(new FlowLayout());
Fonts = new Choice();
//Some fonts don't work because we I don't know what fonts are in the JGE. Working on how to find them
//Will just add fonts to this system if possible.
Fonts.addItem("Dialog");
Fonts.addItem("Serif");
Fonts.addItem("SansSerif");
Fonts.addItem("Monospaced");
Fonts.addItem("DialogInput");
Fonts.addItem("Calist");
Fonts.addItem("Centbi");

add(Fonts);
TestTxt = new TextField("Enter Text",15);
add(TestTxt);
TestOutput = new Button("Enter");
add(TestOutput);
Change = new Button("Change Font");
add(Change);
text = new Label("Real eye realize real lies");
add(text);

Change.addActionListener(this);
TestOutput.addActionListener(this);
}

public void actionPerformed(ActionEvent evt) {
String item = (String) Fonts.getSelectedItem();
//Gets the selected option from the list and sets the text as the Font.
if (evt.getSource() == Change){
text.setFont(new Font(item, Font.PLAIN, 12));
}
//In this section you can enter something and print it out on the screen.
if ( evt.getSource() == TestOutput){
repaint();
}
}


/**
* I'm trying to figure out what code goes here in order for the font to change here also....5/22/13
*
*/
public void paint (Graphics g){
//String item = Fonts.getSelectedItem();
//g.setFont(TestTxt.setFont(new Font(item, Font.PLAIN, 12)));
g.drawString(TestTxt.getText(),20,100);

}
}

最佳答案

GraphicsEnvironment中有一个名为registerFont的方法。例如。如this answer中所示.

关于java - 字体更换器应用程序。有些字体无法使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16818674/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com