]> git.saurik.com Git - wxWidgets.git/blob - docs/latex/wx/htdcrend.tex
toplevel code transferred to wxTopLevelWindow
[wxWidgets.git] / docs / latex / wx / htdcrend.tex
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 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