使用透明部分绘制字符时,您可以看到透过的背景颜色。如何将字体透明部分更改为白色?
例如,使用此代码,我得到chess pawn with gray background:
package com.gmail.vstollen;
import javax.swing.*;
import java.awt.*;
public class Example extends JPanel {
@Override
protected void paintComponent(Graphics g) {
super.paintComponent(g);
g.setColor(Color.GRAY);
g.fillRect(0 ,0, getWidth(), getHeight());
//Font containing chess figures
g.setFont(new Font("DejaVu Sans", Font.PLAIN, 100));
g.setColor(Color.BLACK);
g.drawString("\u2659", 10, 100);
}
public static void main(String args[]) {
JFrame frame = new JFrame("Example");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setSize(200, 200);
frame.add(new Example());
frame.setVisible(true);
}
}
我该怎样做才能让它像this一样?
答案 0 :(得分:2)
由于各种原因,我不认为使用普通的字符串图纸是可能的。最简单的解决方案是使用Images而不是Strings;虽然如果你真的想使用字符串,你也可以改变文本颜色本身以识别teamColor(无论你喜欢哪种)。
答案 1 :(得分:0)
只需制作所需图片的图片,然后将其绘制到10, 100
。