Java 将DGN转换为PDF

Java 将DGN转换为PDF,java,web-applications,command-line,jakarta-ee,autocad,Java,Web Applications,Command Line,Jakarta Ee,Autocad,如何通过命令行将MicroStation(DGN)文件转换为PDF?Decision Graphics有许多将DGN转换为DWG的产品,所有这些产品都可以从命令行运行 拥有DWG文件后,可以使用命令行DWG到PDF转换器之一(我不推荐使用特定的转换器,但快速谷歌会找到加载),或者如果您有AutoCAD或AutoCAD LT的副本,您可以使用DWG到PDF绘图仪为此编写一个脚本来转换DWG。Decision Graphics有许多将DGN转换为DWG的产品,所有这些产品都可以从命令行运行 拥有DW

如何通过命令行将MicroStation(DGN)文件转换为PDF?

Decision Graphics有许多将DGN转换为DWG的产品,所有这些产品都可以从命令行运行

拥有DWG文件后,可以使用命令行DWG到PDF转换器之一(我不推荐使用特定的转换器,但快速谷歌会找到加载),或者如果您有AutoCAD或AutoCAD LT的副本,您可以使用DWG到PDF绘图仪为此编写一个脚本来转换DWG。

Decision Graphics有许多将DGN转换为DWG的产品,所有这些产品都可以从命令行运行

拥有DWG文件后,可以使用命令行DWG到PDF转换器之一(我不推荐使用特定的转换器,但快速谷歌会找到加载),或者如果您有AutoCAD或AutoCAD LT的副本,您可以为此编写一个脚本,通过使用DWG到PDF绘图仪来转换DWG。

具有dgn库和具有PDF功能的DWG库。 您可以使用它们来创建命令行实用程序。

具有dgn和dwg库以及pdf功能。
您可以使用它们来创建命令行实用程序。

根据命令行参数,您不能这样做。但是,您可以创建一个Visual Basic或VB.NET应用程序,该应用程序将由microstation为您执行此操作。

从命令行参数中,您无法执行此操作。但是,您可以创建一个Visual Basic或VB.NET应用程序,该应用程序将由microstation为您完成。

我一直在努力解决这个问题。所有现有的工具都需要昂贵的每用户许可证,这对我的实现来说是不可能的

我结合三件事解决了这个问题:

  • 下载的宾利浏览器。这是他们100%免费的查看/打印应用程序

  • 使用GhostScript和RedMon设置虚拟Windows postscript打印机。在线上有各种各样的指南,跟踪所有的先决条件可能有点棘手,但一旦设置正确,它就相当稳定了。以下是一个指南:

  • 使用“输入”脚本将打印命令传递给Bentley View。这只需要使用所需的命令创建一个文本文件,并在命令行上传递它和要转换的文件:

    BentleyView.exe-M[Filename.dgn]-S[KeyIn Filename]

    请注意,在-M和DGN文件名之间需要一个空格,但在-S和键入脚本文件名之间不需要空格

    我用来打印文档然后退出GUI的脚本是:

    PRINT PRINTERNAME PDFWriter
    PRINT EXECUTE
    QUIT
    

  • 这根本不是一个完美的解决方案,特别是因为它需要安装Bentley View,并且在调用时也会打开一个UI(尽管它在打印后会立即关闭)。

    我一直在努力解决这个问题。所有现有的工具都需要昂贵的每用户许可证,这对我的实现来说是不可能的

    我结合三件事解决了这个问题:

  • 下载的宾利浏览器。这是他们100%免费的查看/打印应用程序

  • 使用GhostScript和RedMon设置虚拟Windows postscript打印机。在线上有各种各样的指南,跟踪所有的先决条件可能有点棘手,但一旦设置正确,它就相当稳定了。以下是一个指南:

  • 使用“输入”脚本将打印命令传递给Bentley View。这只需要使用所需的命令创建一个文本文件,并在命令行上传递它和要转换的文件:

    BentleyView.exe-M[Filename.dgn]-S[KeyIn Filename]

    请注意,在-M和DGN文件名之间需要一个空格,但在-S和键入脚本文件名之间不需要空格

    我用来打印文档然后退出GUI的脚本是:

    PRINT PRINTERNAME PDFWriter
    PRINT EXECUTE
    QUIT
    
  • 这根本不是一个完美的解决方案,特别是因为它需要安装Bentley View,并且在调用时也会打开UI(尽管打印后会立即关闭)