我已经研究过如何在C#中重新打印假脱机文件几天了,我遇到了一个紧急问题。我找到了很好的示例和解释如何打印作业,但打印作业不断从队列中消失,打印机不打印。
建议的解决方案包括Microsoft的源代码:https://support.microsoft.com/en-us/help/322091
和此:
void printDocument1_PrintPage(object sender, PrintPageEventArgs e)
{
Metafile metafile = new Metafile("SampleMetafile.emf");
e.Graphics.DrawImage(metafile, 10, 10);
}
来自之前的Stackoverflow讨论: Can I reprint a spool file?
我尝试了两者并出现同样的问题,打印作业出现在队列中,消失,并且没有打印或打印错误。
我找到了一个体面的Visual Basic示例,它就像魅力一样,但我宁愿避免从我的C#app启动一个单独的VB应用程序,只是为了获取假脱机文件并将它们发送到另一台打印机。
VB示例来自代码项目:https://www.codeproject.com/Articles/10586/EMF-Printer-Spool-File-Viewer
我所希望的是,有人知道C#中的类似项目示例,或者为什么即使我尝试的C#代码似乎工作,打印作业也会从队列中消失而不打印
使用的打印机是Epson TM-T88V收据'设备
编辑:假脱机文件的格式为EMF