2012-04-18 29 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