【发布时间】:2012-02-16 15:26:52
【问题描述】:
我正在做一个在 Java 中获取字体的测试,基本上是获取更大的字母 png,然后将其切割成更小的部分,以将每个单独的字母作为单独的子图像。到目前为止,我使用的是 BufferedImage 和 java.awt.Graphics。
但是,我计划在未来使用 LWJGL,并且想更加熟悉它(对于这个测试,我什至使用 LWJGL 创建显示),并且想知道是否有等效的LWJGL 的 OpenGL 中的子图像。我不想变得圆滑。
这是图片,以防万一: http://i.imgur.com/LeL58.png
这是我正在使用的代码,它可能会有所帮助。
package typeandscreen;
*imports go here, cut to save space*
public class Font{
final int width = 78;
final int height = 12;
final int rows = 2;
final int cols = 13;
BufferedImage letters[] = new BufferedImage[rows*cols];
void test(){
try{
final BufferedImage totalImage = ImageIO.read(new File("ABCabcs.png"));
for(int i = 0; i < rows; i++){
for(int j = 0; j < cols; j++){
letters[(i * cols) + j] = totalImage.getSubimage(
j * width,
i * height,
width,
height
);
}
}
} catch(IOException e){
e.printStackTrace();
}
}
}
【问题讨论】:
-
将它们复制到单个图像中是一个坏主意。此外,您就基本相同的问题提出了许多问题,您应该尝试以一种方式解决它,而不是尝试一堆事情并在它们一次不起作用时立即放弃。如果您没有成功,请考虑发放赏金来帮助解决您的问题。 OpenGL 中的直接等价物是 glTexSubImage2D() btw。
-
我将暂时搁置这些问题,只使用目前提供给我的答案和示例。感谢您的帮助。