我想知道是否可以在没有用户互动的情况下将iframe内容保存为.xps / .pdf格式。
目前,我的编码能够跳过打印对话框并选择默认打印机。但是,它无法绕过另存为对话框。
有人有建议解决这个问题吗?
浏览器:IE 9(不支持HTML 5)
Javascript:
function PrintDoc()
{
var TestPrint = null;
TestPrint = this.document.frames['iframecontent'];
if(TestPrint) //verify the content isn't empty or null
TestPrint.bypassprint();
}
VBScript:
Sub bypassprint()
call WB.ExecWB(6, 2) //bypass printer dialog box
call Wb.Dispose()
End Sub
HTML:
<input type="submit" name="Submit" value="Print" onclick="javascript:PrintDoc();" id="btnSubmit" class="Btn" />
假设我有一个id =“iframecontent”的iframe标记,我希望在没有用户互动的情况下将iframe内容打印为.xps / .pdf格式。
上述代码可以绕过打印机对话框,但不能绕过另存为对话框。
任何给出的建议都会受到赞赏:)
答案 0 :(得分:0)
服务器端解决方案: 首先:获取HTML,然后将其传递给可以从中创建pdf的组件,并且瞧瞧; - )
http://www.codeproject.com/Questions/334862/HTML-to-PDF-in-VB-NET-or-CS-NET
客户端解决方案: 这有点困难,浏览器不允许您在没有用户交互的情况下生成pdf。但是:您可以将html文档发送到API(您创建它),然后发送一个URL,您可以在其中下载生成的pdf。 do window.open(downloadUrl)和用户在没有进一步对话的情况下下载pdf。
要从html创建pdf,请参阅服务器端解决方案; - )