我想为我的网站提供PDF格式的打印机友好功能。我正在使用asp经典。我怎样才能做到这一点?需要建议。感谢..
答案 0 :(得分:1)
如果您的内容是静态的,只需链接到PDF即可 如果您的内容是动态的,您可以:
添加一个链接,该链接呈现与原始页面相同的内容,但具有减少的样式和图形信息。然后只需在页面中添加以下脚本:
< script language ='javascript'type ='application / javascript'>
window.onload = function(){window.print();};
< /脚本>
在服务器中安装PDF Writer,并制作页面的PDF版本。由于对“打印机友好”版本的每个请求都将启动组件并进行打印,因此执行起来会非常糟糕。如果您仍然需要这样做,我可以推荐bioPDF。只需获取您生成的HTML文本,将其另存为服务器上的文件,然后从其ActiveX接口运行bioPDF,从html文件生成PDF版本。
答案 1 :(得分:1)
您可以使用ABCpdf(免费使用linkBack程序)从HTML页面生成PDF(查找ASP经典版本)。
就我而言,我在导出之前将CSS更改为更多打印机/ PDF友好版本。
以下是我使用的代码:
function CrearPDF( URL, FileName )
dim theDoc, theID, iAux
on error resume next
set theDoc = Server.CreateObject("ABCpdf4.Doc")
theDoc.Rect.Inset 20, 10
theID = theDoc.AddImageUrl(URL, True, 0, False)
do
If (theDoc.GetInfo(theID, "Truncated") <> "1") Then Exit Do
theDoc.Page = theDoc.AddPage()
theID = theDoc.AddImageToChain(theID)
loop
For iAux = 1 To theDoc.PageCount
theDoc.PageNumber = iAux
theDoc.Flatten
Next
theDoc.Save Server.MapPath("../temp/") + "\" + FileName
Set theDoc = Nothing
if err.number <> 0 then
CrearPDF = false
else
CrearPDF = true
Call OutputFile( Server.MapPath("../temp/"), nombreArchivo )
end if
end function
答案 2 :(得分:0)
什么是“PDF格式的打印机友好功能”?如果您指的是允许人们打印或导出/打印到PDF的打印机友好格式,那么您只需要使用一些CSS。这是所有客户端编程,与您的服务器端语言无关。
答案 3 :(得分:0)
如果我正在编写书本式内容 - 例如用户手册 - 并且想要HTML和PDF,我使用DocBook。这是一种类似于HTML的XML语言,您可以从中获取HTML,PDF和其他此类输出格式。有许多可用的工具链。 DocBook最适合于高度结构化的内容,而不需要很多花哨的格式化。
如果您的网站在图形设计上很重,那么库存DocBook样式表将不会非常有用,因为它们适用于普通的香草格式。但是,您可以使用XSLT编写自己的样式表。从XML到HTML非常简单。对于PDF方面,您可以使用像InDesign这样的页面布局程序,它知道如何导入XML,解析它并将内容倾注到现有布局中。我最近听到某人做了这件事,所以他们可以在一个地方更改他们网站的文本,然后生成HTML和PDF版本。