首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用RedMon重定向打印机的RedMon文件到我的Java代码

用RedMon重定向打印机的RedMon文件到我的Java代码
EN

Stack Overflow用户
提问于 2016-10-27 18:26:00
回答 1查看 372关注 0票数 1

我正在尝试用RedMon将打印机的RedMon文件重定向到我的Java代码。

RedMon端口配置:

重定向到程序: Files\Java\jre1.8.0_111\bin\java.exe C:\

参数:-jar c:\dist\JavaApplication5.jar --stdin

以及Java代码:

代码语言:javascript
复制
public class JavaAplication5 {

public static void main(String[] args) throws FileNotFoundException {
    BasicConfigurator.configure();                          //log4j
    System.setProperty("jna.library.path", "C:\\dist\\");   //fix path to gsdll

     FileInputStream file = new FileInputStream(args[0]);
     Ghostscript gs = Ghostscript.getInstance(); 
     String[] gsArgs = new String[10];
    gsArgs[0] = "-ps2pdf";
    gsArgs[1] = "-dNOPAUSE";
    gsArgs[2] = "-dBATCH";
    gsArgs[3] = "-dSAFER";
    gsArgs[4] = "-sDEVICE=pdfwrite";
    gsArgs[5] = "-sOutputFile=output.pdf";
    gsArgs[6] = "-c";
    gsArgs[7] = ".setpdfwrite";
    gsArgs[8] = "-f";
    gsArgs[9] =  String.format(" %s ", file) ;        

    try { 
        gs.initialize(gsArgs);
        gs.exit(); 
    } catch (GhostscriptException e) {
        JOptionPane.showMessageDialog(null, "ERROR: " + e.getMessage());
    }
}
}

我怎么才能让这个起作用?

EN

回答 1

Stack Overflow用户

发布于 2016-10-27 19:32:47

因此,如果我正确地阅读了这篇文章,您已经设置了RedMon,将发送到端口的数据发送到您的Java应用程序。

然后系统调用Ghostscript (使用ps2pdf脚本)并告诉它从stdin读取。

但是Ghostscript stdin不是Java程序的stdin,除非我误解了Java的某些方面。

我希望当您分叉Ghostscript实例时,应用程序会得到自己的stdin,这与与Java程序关联的stdin不一样。

最好的方法是将输入写入Java程序的文件中,并在完成后在文件上执行Ghostscript。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40291719

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档