2009-07-27 98 views
1

我正在使用JQuery创建ASP.NET日历, 而我正在尝试实现打印。 我可以打印简单的HTML或图像没有问题。 但我不知道如何构建像谷歌日历打印的打印。谷歌日历打印如何工作?

当您在“日历打印预览”弹出有更多的选择(跨浏览器),在打印对话框打印 一些这方面的打印对话框是如何从一个简单的浏览器打印, 不同他们似乎有更多的控制例如设置横向打印。

任何人都知道如何实现这个?

感谢

+0

日历,而不是日历 – 2009-07-27 06:30:42

回答

2

这只是与发布到生成一个PDF文档的服务器端脚本一些选项的弹出窗口。

你可以使用

<link media="print" rel="stylesheet" type="text/css" href="main.css" /> 

做而不使用生成图像/ PDF服务器端脚本类似的东西。

注意media =“print”,这意味着给定的样式表将在打印页面时使用。您可以指定自定义CSS规则(如隐藏导航,使日历在纸上看起来不错)等。

编辑:

回应评论。如果将html转换为pdf,它看起来完全一样。当您在Google日历中提交该表单时,他们会采用所有这些选项并从中生成pdf。如果您选择风景,他们将旋转页面并重新计算所有内容,以使其适合页面。为了简化它,他们根据您提交的选项在服务器端绘制图像并将其放入pdf。

这并不是那么简单,如果你以前没有做过。我会在打印页面中使用css和JavaScript来查看是否可以通过使用JS和css规则在横向和纵向之间切换(使用2个按钮 - “横向”,“纵向”,当用户点击它们时模仿这种东西你改变你的日历的CSS规则,以适应给定的纸张大小)。再一次,如果你不熟悉CSS,那么它将很难。

没有确定的答案,谷歌的路径非常好,但它不是很容易重现。

更多信息请见评论。

+0

我正在复制日历HTML到一个新窗口,它有一个window.print()按钮。 所以我需要将HTML转换为PDF并打印PDF? 你知道我该怎么做? 我如何控制PDF打印,如设置横向打印? 谢谢。 – SirMoreno 2009-07-27 06:54:20