java 中在图像上绘制文字

private void printText(BufferedImage image, float x, float y, String text) {
        Graphics2D g = image.createGraphics();
        g.setColor(Color.RED);
        g.setFont(new Font("Arial", Font.BOLD, 30));
        FontMetrics fm = g.getFontMetrics();
        int width = fm.stringWidth(text);
        int height = fm.getHeight();
        g.drawString(text, x, y + fm.getAscent());
        g.dispose();
    }

比较坑的一点就是这个坐标,我在c++和c#中这个坐标一般都是左上角,但java中弄了个什么基线,坑了我好几个小时。这个函数入参 (x,y)  就是要绘制的文字的左上角坐标。

posted on 2023-06-25 17:15  空明流光  阅读(202)  评论(0编辑  收藏  举报

导航