gpt4 book ai didi

java - 更改 Slick Graphics API 中的默认字体

转载 作者:行者123 更新时间:2023-12-01 15:16:42 27 4
gpt4 key购买 nike

我正在尝试更改 Slick Graphics API 的默认字体,以简单地绘制我正在编写的游戏的标题,但我似乎无法让它工作(它不绘制任何东西,只是留下屏幕空白)。我想使用一种标准 Java 字体 (Verdana)。

这是我用来设置字体的代码:

import java.awt.Font;

import org.newdawn.slick.AppGameContainer;
import org.newdawn.slick.BasicGame;
import org.newdawn.slick.Color;
import org.newdawn.slick.GameContainer;
import org.newdawn.slick.Graphics;
import org.newdawn.slick.SlickException;
import org.newdawn.slick.UnicodeFont;

public class Controller extends BasicGame {
UnicodeFont uFont;

@Override
public void render(GameContainer container, Graphics g) throws SlickException {
g.setFont(uFont);
g.setColor(Color.white);
g.drawString("Hello World!", 50, 50);
}

@Override
public void init(GameContainer container) throws SlickException {
//Set font
Font font = new Font("Serif", Font.PLAIN, 20);
uFont = new UnicodeFont(font, font.getSize(), font.isBold(), font.isItalic());
}

/**
* @param args
* @throws SlickException
*/
public static void main(String[] args) throws SlickException {
//Set up application
Controller c = new Controller("Tetris");
AppGameContainer app = new AppGameContainer(c);
app.setDisplayMode(500, 800, false);

//Start application
app.start();
}
}

经过我自己的多次尝试,我正在使用本网站底部的代码:

http://slick.javaunlimited.net/viewtopic.php?t=3508

我的问题是:如何更改 Slick 中的默认字体,并以该字体在屏幕上绘制游戏标题的文本。

最佳答案

Slick-Util 使用 Java 内置的字体支持来加载字体。您可以使用默认内置的 java 字体或加载外部 ttf 文件。

字体通过 slick 的 TrueTypeFont 类 进行存储和绘制。

从 ninjacave 查看此代码:

TrueTypeFont font;
TrueTypeFont font2;

public void init() {
// load a default java font
Font awtFont = new Font("Times New Roman", Font.BOLD, 24);
font = new TrueTypeFont(awtFont, false);

// load font from a .ttf file
try {
InputStream inputStream = ResourceLoader.getResourceAsStream("myfont.ttf");

Font awtFont2 = Font.createFont(Font.TRUETYPE_FONT, inputStream);
awtFont2 = awtFont2.deriveFont(24f); // set font size
font2 = new TrueTypeFont(awtFont2, false);

} catch (Exception e) {
e.printStackTrace();
}
}

有关更多详细信息,请查看这些网站:

http://ninjacave.com/slickutil1

关于java - 更改 Slick Graphics API 中的默认字体,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11504233/

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