2

我的问题很直接。我最近开始使用 Im4Java,一个 imagemagick java 包装器,并且想知道 API 是否支持向图像添加文本。如果允许,是否允许指定字体大小、字体和颜色。API的方法部分是否支持此功能?如果没有,什么可能是开源替代方案?

4

1 回答 1

4

基于对我的多个问题的否决,一定有人真的很讨厌我。无论如何,我在 Im4Java 的 API 中找到了这些方法,并发布了带有注释的代码:

public void annotateImage()
{
    IMOperation op = new IMOperation(); //imagemagick operator for command line tools

    //draw method
    op.addImage(); //input image
    op.resize(957, 626); //resizing image
    op.pointsize(20); //size of text
    op.font("Times-New-Roman"); // font
    op.fill("Black"); //font color
    op.draw("text 500,300 'works like magic!'"); // location of text, actual text 
    op.addImage();// output image

    ConvertCmd cmd = new ConvertCmd(); //using the convert command from imagemagick
    cmd.setSearchPath("C:\\Program Files (x86)\\ImageMagick-6.8.9-0"); //commands location
    FilenamePatternResolver resolver = new FilenamePatternResolver("%P/%f.jpg");

    try {
        cmd.run(op, "dest\\input.jpg", resolver.createName("dest\\output.jpg"));    
    } catch (Exception e)
    {
        e.printStackTrace();
    }
}
于 2014-11-04T19:44:13.020 回答