Printing support in Sciter.
February 19, 2010
Sciter is getting print and print preview support. At the moment architecture and core functionality is established. Here is a screenshot of one of test pages demonstrating print preview:
Print preview is implemented as a native behavior that by default is assigned to any <frame type="pager"> element. Print Preview by its nature is a frame containing other document, that is why <frame> is used. The <frame> element may contain page-template="page.htm" DOM attribute that contains URL of so called page template document.
Here is an example of such page template.
<html>
<head>
<title></title>
<style>
frame#content-box { size:*; }
text#header { border-bottom: 1px solid gray; }
text#footer { border-top: 1px solid gray; }
:root[page-parity=odd] text#footer { text-align:left; }
:root[page-parity=even] text#footer { text-align:right; }
:root[page-parity=odd] frame#content-box
{
margin-left:10pt;
margin-right:20pt;
}
:root[page-parity=even] frame#content-box
{
margin-left:20pt;
margin-right:10pt;
}
</style>
</head>
<body>
<text #header>Header....</text>
<frame #content-box />
<text #footer>Page <span #page-no /></text>
</body>
</html>
<frame #content-box /> here defines area where source document will be printed. Such page template may contain arbitrary markup and styles and is accessible/modifiable by script on the host page.
It is possible to style the template for even/odd pages, even for the page with particular number.



No Comments »
No comments yet.
RSS feed for comments on this post. TrackBack URI
Leave a comment