java - ImageMagick 和 Java Runtime Exec 的问题

标签 java command-line terminal imagemagick runtime.exec

我遇到了一个奇怪的问题,据我所知没有 Java 专家可以解决..

我需要在我的应用程序上使用 imagemagick 将我网站上的电子邮件转换为图像,这样就没有锅可以轻松地获取电子邮件..使用 image magick 命令行解决了问题,如下所示 转换 -size 200x30 xc:transparent -font/home/emad/TITUSCBZ.TTF -fill black -pointsize 12 -draw "text 5,15 'emadhegab@hotmail.com'"/home/emad/test.png

它真的像魔术一样工作,所以我尝试将其放在java上来运行它 Runtime.getRuntime().exec(命令) 但结果令人遗憾地令人失望..我现在有图像作为输出..但里面没有文本..我做了一个系统来查看命令并采取了输出的命令并将其放入终端中并且它起作用了..所以运行时的问题是如何的..java的代码是..以防万一你问

==================

            String size = ("1000x1030");

    String path = System.getProperty("user.home");
    String command="convert -size "+ size +" xc:white -font /tmp/TITUSCBZ.TTF -pointsize 12 -draw 'text 300,300 \"emadhegab@hotmail.com\"' "+path +"/test.jpg";
    try{
    Process proc =Runtime.getRuntime().exec(command);

    System.out.println(command);
    }catch(Exception e){
        System.out.println("error");
    }

=================

它会给你空白图像..有人有解决方案吗

最佳答案

您需要传递命令,它的参数是字符串数组,而不是字符串连接。

String[] cmd = {"convert",  "-size", "size", "c:white", ..., path +"/test.jpg"};

关于java - ImageMagick 和 Java Runtime Exec 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2148043/

相关文章:

java - 关于访问者模式的问题(Java 示例)

java - 如何在 Struts 1.x 中的重定向 URL 中添加 header ?

java - 使用 javafx 创建日历

windows - IISRESET 和 IIS Stop-Start 命令之间的区别

macos - 如何从 Mac/MacRuby 应用程序运行 shell 命令?

java - PowerMockito 在 Spring 3.2.4 中模拟静态测试 Controller

command-line - 设置PowerShell脚本以自动执行

git - 有谁知道用于 windows 的 git bash 程序用于其 shell 的是什么?

java - 如何通过简单地调用其名称来从终端运行java应用程序?

typescript - 如何设置 typescript 编译器 (tsc) 的默认目标 es 版本?