2012-04-18 30 views
1

我有一个web应用程序,使用Websupergoo的ABCPDF创建pdf。在用户点击CreatePDF按钮之后,浏览器只需下载创建的PDF。相反,我希望打印对话框打开,以便用户可以选择打印机,然后打印PDF。创建后自动打印创建的pdf

这是如何实现的?

请让我知道如果你需要看到我的任何代码在评论区,我会承担责任。

+0

可能的重复[在C#打印Pdf](http://stackoverflow.com/questions/5566186/print-pdf-in-c-sharp) – 2012-04-18 19:39:08

+2

@IgbyLargeman他想强制打印PDF时自动当用户点击浏览器中的按钮。像javascript中的print()函数.... – madflow 2012-04-18 19:43:41

+0

重复? http://stackoverflow.com/questions/687675/can-a-pdf-files-print-dialog-be-opened-with-javascript – madflow 2012-04-18 19:45:26

回答

2

您可以返回一个html页面,并使用javascript打印功能显示打印对话框或要求用户下载pdf。

在你的情况下,一个好的选择将是2个按钮:“下载pdf”和“打印”。 当用户点击打印时,他可以选择可能是PDF打印机的打印机。

见相关:Can a PDF file's print dialog be opened with Javascript?

1

我想你基本上要求做的,就是要求在打开的PDF打印,这除非有某些应用程序使用专有挂钩,是不可能的应用程序(和在Adobe之外,可能不会很跨平台友好)。

Javascript的print函数是一种“标准化”方法,可以告诉浏览器进行打印,因此通常可以安全执行,但是PDF应用程序和它们提供给浏览器的插件都可以显示PDF“浏览器内”似乎没有挂钩这样做。

PDF一旦打开,该控制方案就不在您的控制范围之内。正如@jorgebg提到的那样,要么打印一个HTML页面,要么让他们下载PDF,以便他们可以随心所欲地做任何事情。不幸的是,两者都没有明确的办法。

+0

是的,我决定我只是让用户下载和然后像你说的那样做他们喜欢的事情。这只是说WebSuperGoo的网站说可以用C#完成,但他们不方便解释。 – broguyman 2012-04-18 20:35:42

+0

我很好奇他们的意思 - 你能提供一个链接到他们提到的地方吗?也许他们将打印机当作另一个发送数据的资源来对待,因此它不一定适用于您正在使用的Web应用程序?否则,我很难过。 – Mattygabe 2012-04-18 20:43:38