Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 通过网络安装的打印机在服务器端打印PDF文件_C#_Asp.net_Printing Web Page_System.printing_Jdf - Fatal编程技术网

C# 通过网络安装的打印机在服务器端打印PDF文件

C# 通过网络安装的打印机在服务器端打印PDF文件,c#,asp.net,printing-web-page,system.printing,jdf,C#,Asp.net,Printing Web Page,System.printing,Jdf,浏览了关于这个主题的现有帖子,但我的要求有些不同 在客户端浏览器中执行操作后,通过网络安装的打印机打印作业。Web服务器中有所有打印机,根据客户端数据,我们需要立即使用客户端给定的配置进行打印,并将作业发送到打印机(可能是不同的位置,但这不是问题,因为打印机位于同一网络中)。我看过打印架构、Win32_打印类、SNMP、System.drawing.printing、System.printing。。。。但是找不到实现这一点的方法。。(Asp.net,C#) -文件已经存在于服务器文件夹中,只是

浏览了关于这个主题的现有帖子,但我的要求有些不同

在客户端浏览器中执行操作后,通过网络安装的打印机打印作业。Web服务器中有所有打印机,根据客户端数据,我们需要立即使用客户端给定的配置进行打印,并将作业发送到打印机(可能是不同的位置,但这不是问题,因为打印机位于同一网络中)。我看过打印架构、Win32_打印类、SNMP、System.drawing.printing、System.printing。。。。但是找不到实现这一点的方法。。(Asp.net,C#)

-文件已经存在于服务器文件夹中,只是我需要拿起并发送到具有客户端选定配置的打印机

更新:我必须使用JDF方法,因为所有的文件都是PDF文件。我能够用所选的配置创建JDF文件,但将此JDF发送到打印机(启用JDF)使我很难。。。有JMF将JDF发布到打印机,但不确定如何实现它。。如果有人能在这方面提供帮助,仍然能找到方法,那将是非常棒的。

我能回答一些问题!8-)我现在正在做一个使用这个的项目

不要将Acrobat Reader用作任何类型的服务器应用程序。它有一个用户界面,在一个不存在的屏幕上,在一个意外的时间弹出,并冻结你的应用程序,等待永远不会发生的点击

使用鬼影脚本。Ghostscript是免费的、开源的,可以完美地满足您的需求。它由一个DLL和一个命令行界面组成,但是有一个API和大量不同的接口,包括.Net,以及Windows和Linux的版本


在一个更为“概述”的注释中,您之所以可以将PDF拖到工作站上的打印机中,是因为Acrobat Reader包含允许此操作的代码和挂钩。Windows实际上不包含打印PDF的本机功能。

这些是什么类型的文件?它们是最终形式(例如PostScript),还是在发送到打印机之前需要某种程序来生成可打印的输出?嗨,John,谢谢您关注这个问题。这些文件是PDF格式的。是的,我需要编写一个程序来生成可打印的输出副本,并以静默方式将其发送到打印机,可能我还需要显示打印的进度。您应该“询问”Adobe如何使程序启动Acrobat Reader来打印文件。然后,调整该技术以在Web应用程序中运行。取得印刷进展将是另一回事;向用户显示进度是另一回事。@JohnSaunders我通过使用acrobat reader exe实现了使用带参数的进程,我能够成功打印,但挑战无法将打印设置传递给它,如(副本数、排序规则、双面打印等)因此,在搜索实用程序或想法时,可以在web中使用给定的打印设置创建打印作业。同样,这是Adobe的问题。这方面没有通用API,但可能有AcrobatAPI。