【问题标题】:How to check whether postscript file generation completed or not?如何检查postscript文件生成是否完成?
【发布时间】:2014-01-20 07:53:44
【问题描述】:

在我的代码中,我必须使用 word word 文档生成 postscript 文件,最后使用 postscript 文件(使用 Acrobat Distiller)将其转换为 PDF 文档。

我在将 word 文档转换为 postscript 文件时遇到一个问题,生成 postscript 文件需要时间。问题是没有完成 postscript 文件的生成,我的代码使用 postscript 文件作为输入参数移动到生成 PDF 文件的下一条语句。
在这里,我想检查一下 postscript 文件生成是否完成,然后它应该移动到生成 PDF 的下一条语句。

将 Word 转换为 PostScript 文件的代码

public Word.Application objWordApp = null; 
public Word.Document objWordDoc = null;

object objMissing = System.Reflection.Missing.Value;
                if (Convert.ToString(objWordApp.ActivePrinter) != AdobePDF)
                {
                    SetDefaultPrinter(AdobePDF);
                }
                objWordDoc.PrintOut(ref objMissing, ref objMissing, ref objMissing, objWordOutputPath, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing, ref objMissing);

将 Postscript 文件转换为 PDF 的代码

private PdfDistiller objPDFMaker;
public void ConvertToPDF(string psfile, string outputName)
{
  objPDFMaker.FileToPDF(psfile, outputName, "");
}

如何查看 Postscript 文件生成是否完成?

【问题讨论】:

  • 大家好,你能帮帮我吗..
  • 是否可以以阻塞方式调用PrintOut()?也许其中一个参数可用于设置模式,或传递回调函数以进行通知。

标签: c# .net ms-word acrobat postscript


【解决方案1】:

执行此操作的正常方法(当您没有完成事件或类似的互斥体时)是坐在一个循环中并检查文件大小,如果它在一段时间内没有改变(取决于您决定多长时间)然后它的稳定和大概完成。

不过,这不是与 PostScript 相关的问题。

为什么不使用 Acrobat 提供的 PDFMaker 宏让 Word 直接创建 PDF 文件,而不是先转到 PostScript?

【讨论】:

  • 我尝试使用 PDFMaker 直接将 word 转换为 PDF,但我们没有得到包含图像和文本的确切 pdf。为避免此问题,我们使用 Acrobat Distiller 中加载的一些字体,并将 word 转换为 .ps,然后将 .ps 转换为 PDF。
  • 将 word 转换为 postscript 文件需要时间。在这里,我需要检查 postscript 文件生成是否完成。完成后,ps 文件应使用 acrobat distiller 转换为 pdf。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2023-02-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-11-13
  • 1970-01-01
相关资源
最近更新 更多