]>
Commit | Line | Data |
---|---|---|
1 | % | |
2 | % automatically generated by HelpGen from | |
3 | % htmprint.h at 17/Oct/99 12:48:02 | |
4 | % | |
5 | ||
6 | \section{\class{wxHtmlDCRenderer}}\label{wxhtmldcrenderer} | |
7 | ||
8 | This class can render HTML document into a specified area of a DC. You can use it | |
9 | in your own printing code, although use of \helpref{wxHtmlEasyPrinting}{wxhtmleasyprinting} | |
10 | or \helpref{wxHtmlPrintout}{wxhtmlprintout} is strongly recommended. | |
11 | ||
12 | \wxheading{Derived from} | |
13 | ||
14 | \helpref{wxObject}{wxobject} | |
15 | ||
16 | \wxheading{Include files} | |
17 | ||
18 | <wx/html/htmprint.h> | |
19 | ||
20 | \latexignore{\rtfignore{\wxheading{Members}}} | |
21 | ||
22 | \membersection{wxHtmlDCRenderer::wxHtmlDCRenderer}\label{wxhtmldcrendererwxhtmldcrenderer} | |
23 | ||
24 | \func{}{wxHtmlDCRenderer}{\void} | |
25 | ||
26 | Constructor. | |
27 | ||
28 | \membersection{wxHtmlDCRenderer::SetDC}\label{wxhtmldcrenderersetdc} | |
29 | ||
30 | \func{void}{SetDC}{\param{wxDC* }{dc}, \param{double }{pixel\_scale = 1.0}} | |
31 | ||
32 | Assign DC instance to the renderer. | |
33 | ||
34 | {\it pixel\_scale} can be used when rendering to high-resolution DCs (e.g. printer) to adjust size of pixel metrics. | |
35 | (Many dimensions in HTML are given in pixels -- e.g. image sizes. 300x300 image would be only one | |
36 | inch wide on typical printer. With pixel\_scale = 3.0 it would be 3 inches.) | |
37 | ||
38 | \wxheading{Parameters} | |
39 | ||
40 | \docparam{maxwidth}{width of the area (on this DC) that is equivalent to the screen's width, | |
41 | in pixels (you should set it to page width minus margins). | |
42 | ||
43 | {\bf Note:} In the current implementation | |
44 | the screen width is always 800 pixels: it gives best results and ensures (almost) same printed outputs | |
45 | across platforms and differently configured desktops.} | |
46 | ||
47 | See also \helpref{SetSize}{wxhtmldcrenderersetsize}. | |
48 | ||
49 | \membersection{wxHtmlDCRenderer::SetSize}\label{wxhtmldcrenderersetsize} | |
50 | ||
51 | \func{void}{SetSize}{\param{int }{width}, \param{int }{height}} | |
52 | ||
53 | Set size of output rectangle, in pixels. Note that you {\bf can't} change | |
54 | width of the rectangle between calls to \helpref{Render}{wxhtmldcrendererrender}! | |
55 | (You can freely change height.) | |
56 | ||
57 | \membersection{wxHtmlDCRenderer::SetHtmlText}\label{wxhtmldcrenderersethtmltext} | |
58 | ||
59 | \func{void}{SetHtmlText}{\param{const wxString\& }{html}, \param{const wxString\& }{basepath = wxEmptyString}, \param{bool }{isdir = true}} | |
60 | ||
61 | Assign text to the renderer. \helpref{Render}{wxhtmldcrendererrender} then draws | |
62 | the text onto DC. | |
63 | ||
64 | \wxheading{Parameters} | |
65 | ||
66 | \docparam{html}{HTML text. This is {\it not} a filename.} | |
67 | ||
68 | \docparam{basepath}{base directory (html string would be stored there if it was in | |
69 | file). It is used to determine path for loading images, for example.} | |
70 | ||
71 | \docparam{isdir}{false if basepath is filename, true if it is directory name | |
72 | (see \helpref{wxFileSystem}{wxfilesystem} for detailed explanation)} | |
73 | ||
74 | \membersection{wxHtmlDCRenderer::Render}\label{wxhtmldcrendererrender} | |
75 | ||
76 | \func{int}{Render}{\param{int }{x}, \param{int }{y}, \param{int }{from = 0}, \param{int }{dont\_render = false}} | |
77 | ||
78 | Renders HTML text to the DC. | |
79 | ||
80 | \wxheading{Parameters} | |
81 | ||
82 | \docparam{x,y}{ position of upper-left corner of printing rectangle (see \helpref{SetSize}{wxhtmldcrenderersetsize})} | |
83 | ||
84 | \docparam{from}{y-coordinate of the very first visible cell} | |
85 | ||
86 | \docparam{dont\_render}{if true then this method only returns y coordinate of the next page | |
87 | and does not output anything} | |
88 | ||
89 | Returned value is y coordinate of first cell than didn't fit onto page. | |
90 | Use this value as {\it from} in next call to Render in order to print multipages | |
91 | document. | |
92 | ||
93 | \wxheading{Caution!} | |
94 | ||
95 | The Following three methods {\bf must} always be called before any call to Render (preferably | |
96 | in this order): | |
97 | ||
98 | \begin{itemize}\itemsep=0pt | |
99 | \item \helpref{SetDC}{wxhtmldcrenderersetdc} | |
100 | \item \helpref{SetSize}{wxhtmldcrenderersetsize} | |
101 | \item \helpref{SetHtmlText}{wxhtmldcrenderersethtmltext} | |
102 | \end{itemize} | |
103 | ||
104 | {\bf Render() changes the DC's user scale and does NOT restore it.} | |
105 | ||
106 | \membersection{wxHtmlDCRenderer::GetTotalHeight}\label{wxhtmldcrenderergettotalheight} | |
107 | ||
108 | \func{int}{GetTotalHeight}{\void} | |
109 | ||
110 | Returns the height of the HTML text. This is important if area height (see \helpref{SetSize}{wxhtmldcrenderersetsize}) | |
111 | is smaller that total height and thus the page cannot fit into it. In that case you're supposed to | |
112 | call \helpref{Render}{wxhtmldcrendererrender} as long as its return value is smaller than GetTotalHeight's. | |
113 |