我需要在Graphics從圖像獲得的對象上繪制帶有黑色輪廓的白色文本。我首先用黑色繪制相同的文本4次(左右移動一個像素),然后使用白色繪制一次。但是,如果輪廓需要超過1px寬,這將無法很好地工作,并且確實(shí)看起來像是hack。有一個更好的方法嗎?final BufferedImage image = ImageIO.read(new File("./test.jpg"));Graphics g = image.getGraphics();g.setFont(g.getFont().deriveFont(45F));// coordinatesint x = 100;int y = 100;String text = "Hello world";g.setColor(Color.black);g.drawString(text, x + 1, y - 1);g.drawString(text, x + 1, y + 1);g.drawString(text, x - 1, y - 1);g.drawString(text, x - 1, y + 1);g.setColor(Color.white);g.drawString(text, x, y);
添加回答
舉報(bào)
0/150
提交
取消