1 \section{\class{wxRichTextHTMLHandler
}}\label{wxrichtexthtmlhandler
}
3 Handles HTML output (only) for
\helpref{wxRichTextCtrl
}{wxrichtextctrl
} content.
5 The most flexible way to use this class is to create a temporary object and call
6 its functions directly, rather than use
\helpref{wxRichTextBuffer::SaveFile
}{wxrichtextbuffersavefile
} or
\rtfsp
7 \helpref{wxRichTextCtrl::SaveFile
}{wxrichtextctrlsavefile
}.
9 Image handling requires a little extra work from the application, to choose an
10 appropriate image format for the target HTML viewer and to clean up the temporary images
11 later. If you are planning to load the HTML into a standard web browser, you can
12 specify the handler flag wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_BASE64 (the default)
13 and no extra work is required: the images will be written with the HTML.
15 However, if you want wxHTML compatibility, you will need to use wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_MEMORY
16 or wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_FILES. In this case, you must either call
\helpref{DeleteTemporaryImages
}{wxrichtexthtmlhandlerdeletetemporaryimages
} before
17 the next load operation, or you must store the image
18 locations and delete them yourself when appropriate. You can call
\helpref{GetTemporaryImageLocations
}{wxrichtexthtmlhandlergettemporaryimagelocations
} to
19 get the array of temporary image names.
21 \wxheading{Handler flags
}
23 The following flags can be used with this handler, via
24 the handler's SetFlags function or the buffer or control's
25 SetHandlerFlags function:
28 \begin{twocollist
}\itemsep=
0pt
29 \twocolitem{\windowstyle{wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_MEMORY}}{Images are saved to the memory filesystem: suitable for showing wxHTML windows.
}
30 \twocolitem{\windowstyle{wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_FILES}}{Images are saved to temporary files: suitable for showing in wxHTML windows.
}
31 \twocolitem{\windowstyle{wxRICHTEXT
\_HANDLER\_SAVE\_IMAGES\_TO\_BASE64}}{Images are written with the HTML files in Base
64 format: suitable for showing in web browsers.
}
32 \twocolitem{\windowstyle{wxRICHTEXT
\_HANDLER\_NO\_HEADER\_FOOTER}}{Don't include header and footer tags (HTML, HEAD, BODY), so that the HTML can be used as part of a larger
document.
}
35 \wxheading{Derived from
}
37 \helpref{wxRichTextFileHandler
}{wxrichtextfilehandler
}\\
38 \helpref{wxObject
}{wxobject
}
40 \wxheading{Include files
}
42 <wx/richtext/richtexthtml.h>
46 \helpref{wxRichtext
}{librarieslist
}
48 \wxheading{Data structures
}
50 \latexignore{\rtfignore{\wxheading{Members
}}}
52 \membersection{wxRichTextHTMLHandler::wxRichTextHTMLHandler
}\label{wxrichtexthtmlhandlerwxrichtexthtmlhandler
}
54 \func{}{wxRichTextHTMLHandler
}{\param{const wxString\&
}{name = wxT("HTML")
},
\param{const wxString\&
}{ext = wxT("html")
},
\param{int
}{type = wxRICHTEXT
\_TYPE\_HTML}}
58 \membersection{wxRichTextHTMLHandler::ClearTemporaryImageLocations
}\label{wxrichtexthtmlhandlercleartemporaryimagelocations
}
60 \func{void
}{ClearTemporaryImageLocations
}{\void}
62 Clears the image locations generated by the last operation.
64 \membersection{wxRichTextHTMLHandler::DeleteTemporaryImages
}\label{wxrichtexthtmlhandlerdeletetemporaryimages
}
66 \func{bool
}{DeleteTemporaryImages
}{\void}
68 Deletes the in-memory or temporary files generated by the last operation.
70 \func{bool
}{DeleteTemporaryImages
}{\param{int
}{flags
},
\param{const wxArrayString\&
}{imageLocations
}}
72 Delete the in-memory or temporary files generated by the last operation. This is a static
73 function that can be used to delete the saved locations from an earlier operation,
74 for example after the user has viewed the HTML file.
76 \membersection{wxRichTextHTMLHandler::DoSaveFile
}\label{wxrichtexthtmlhandlerdosavefile
}
78 \func{bool
}{DoSaveFile
}{\param{wxRichTextBuffer*
}{buffer
},
\param{wxOutputStream\&
}{stream
}}
80 Saves the buffer content to the HTML stream.
82 \membersection{wxRichTextHTMLHandler::GetFontSizeMapping
}\label{wxrichtexthtmlhandlergetfontsizemapping
}
84 \func{wxArrayInt
}{GetFontSizeMapping
}{\void}
86 Returns the mapping for converting point sizes to HTML font sizes.
88 \membersection{wxRichTextHTMLHandler::GetTempDir
}\label{wxrichtexthtmlhandlergettempdir
}
90 \constfunc{const wxString\&
}{GetTempDir
}{\void}
92 Returns the directory used to store temporary image files.
94 \membersection{wxRichTextHTMLHandler::GetTemporaryImageLocations
}\label{wxrichtexthtmlhandlergettemporaryimagelocations
}
96 \constfunc{const wxArrayString\&
}{GetTemporaryImageLocations
}{\void}
98 Returns the image locations for the last operation.
100 \membersection{wxRichTextHTMLHandler::SetFileCounter
}\label{wxrichtexthtmlhandlersetfilecounter
}
102 \func{void
}{SetFileCounter
}{\param{int
}{counter
}}
104 Reset the file counter, in case, for example, the same names are required each time
106 \membersection{wxRichTextHTMLHandler::SetFontSizeMapping
}\label{wxrichtexthtmlhandlersetfontsizemapping
}
108 \func{void
}{SetFontSizeMapping
}{\param{const wxArrayInt\&
}{fontSizeMapping
}}
110 Sets the mapping for converting point sizes to HTML font sizes.
111 There should be
7 elements, one for each HTML font size, each element specifying the maximum point size for that
117 wxArrayInt fontSizeMapping;
118 fontSizeMapping.Add(
7);
119 fontSizeMapping.Add(
9);
120 fontSizeMapping.Add(
11);
121 fontSizeMapping.Add(
12);
122 fontSizeMapping.Add(
14);
123 fontSizeMapping.Add(
22);
124 fontSizeMapping.Add(
100);
126 htmlHandler.SetFontSizeMapping(fontSizeMapping);
129 \membersection{wxRichTextHTMLHandler::SetTempDir
}\label{wxrichtexthtmlhandlersettempdir
}
131 \func{void
}{SetTempDir
}{\param{const wxString\&
}{tempDir
}}
133 Sets the directory for storing temporary files. If empty, the system
134 temporary directory will be used.
136 \membersection{wxRichTextHTMLHandler::SetTemporaryImageLocations
}\label{wxrichtexthtmlhandlersettemporaryimagelocations
}
138 \func{void
}{SetTemporaryImageLocations
}{\param{const wxArrayString\&
}{locations
}}
140 Sets the list of image locations generated by the last operation.