# wxRichTextHTMLHandler Class Reference
[Rich Text]

`#include <wx/richtext/richtexthtml.h>`

Inheritance diagram for wxRichTextHTMLHandler:
[legend]

## Detailed Description

Handles HTML output (only) for wxRichTextCtrl content.

The most flexible way to use this class is to create a temporary object and call its functions directly, rather than use wxRichTextBuffer::SaveFile or wxRichTextCtrl::SaveFile.

Image handling requires a little extra work from the application, to choose an appropriate image format for the target HTML viewer and to clean up the temporary images later. If you are planning to load the HTML into a standard web browser, you can specify the handler flag wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_BASE64 (the default) and no extra work is required: the images will be written with the HTML.

However, if you want wxHTML compatibility, you will need to use `wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_MEMORY` or `wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_FILES`.

In this case, you must either call wxRichTextHTMLHandler::DeleteTemporaryImages before the next load operation, or you must store the image locations and delete them yourself when appropriate.

You can call wxRichTextHTMLHandler::GetTemporaryImageLocations to get the array of temporary image names.

## Handler flags

The following flags can be used with this handler, via the handler's SetFlags() function or the buffer or control's SetHandlerFlags() function:

- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_MEMORY Images are saved to the memory filesystem: suitable for showing wxHTML windows.
- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_FILES Images are saved to temporary files: suitable for showing in wxHTML windows.
- wxRICHTEXT_HANDLER_SAVE_IMAGES_TO_BASE64 Images are written with the HTML files in Base 64 format: suitable for showing in web browsers.
- 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.
- wxRICHTEXT_HANDLER_USE_CSS Use CSS where possible, otherwise use workarounds that will show in wxHtmlWindow.

##

Library: wxRichText

Category: Rich Text

## Public Member Functions
| wxRichTextHTMLHandler (const wxString &name="HTML", const wxString &ext="html", int type=wxRICHTEXT_TYPE_HTML)
| Constructor.
void | ClearTemporaryImageLocations ()
| Clears the image locations generated by the last operation.
bool | DeleteTemporaryImages ()
| Deletes the in-memory or temporary files generated by the last operation.
wxArrayInt | GetFontSizeMapping () const
| Returns the mapping for converting point sizes to HTML font sizes.
const wxString & | GetTempDir () const
| Returns the directory used to store temporary image files.
const wxArrayString & | GetTemporaryImageLocations () const
| Returns the image locations for the last operation.
void | SetFontSizeMapping (const wxArrayInt &fontSizeMapping)
| Sets the mapping for converting point sizes to HTML font sizes.
void | SetTempDir (const wxString &tempDir)
| Sets the directory for storing temporary files.
void | SetTemporaryImageLocations (const wxArrayString &locations)
| Sets the list of image locations generated by the last operation.
## Static Public Member Functions
static bool | DeleteTemporaryImages (int flags, const wxArrayString &imageLocations)
| Delete the in-memory or temporary files generated by the last operation.
static void | SetFileCounter (int counter)
| Reset the file counter, in case, for example, the same names are required each time.
## Protected Member Functions
virtual bool | DoSaveFile (wxRichTextBuffer *buffer, wxOutputStream &stream)
| Saves the buffer content to the HTML stream.

List of all members.

## Constructor & Destructor Documentation

wxRichTextHTMLHandler::wxRichTextHTMLHandler | ( | const wxString & | name = `"HTML"`,
|  | const wxString & | ext = `"html"`,
|  | int | type = `wxRICHTEXT_TYPE_HTML` |
| ) |  |  |

Constructor.

## Member Function Documentation

void wxRichTextHTMLHandler::ClearTemporaryImageLocations | ( |  | ) |

Clears the image locations generated by the last operation.

static bool wxRichTextHTMLHandler::DeleteTemporaryImages | ( | int | flags,
|  | const wxArrayString & | imageLocations |
| ) |  |  | `[static]`

Delete the in-memory or temporary files generated by the last operation.

This is a static function that can be used to delete the saved locations from an earlier operation, for example after the user has viewed the HTML file.

bool wxRichTextHTMLHandler::DeleteTemporaryImages | ( |  | ) |

Deletes the in-memory or temporary files generated by the last operation.

virtual bool wxRichTextHTMLHandler::DoSaveFile | ( | wxRichTextBuffer * | buffer,
|  | wxOutputStream & | stream |
| ) |  |  | `[protected, virtual]`

Saves the buffer content to the HTML stream.

wxArrayInt wxRichTextHTMLHandler::GetFontSizeMapping | ( |  | ) | const

Returns the mapping for converting point sizes to HTML font sizes.

const wxString& wxRichTextHTMLHandler::GetTempDir | ( |  | ) | const

Returns the directory used to store temporary image files.

const wxArrayString& wxRichTextHTMLHandler::GetTemporaryImageLocations | ( |  | ) | const

Returns the image locations for the last operation.

static void wxRichTextHTMLHandler::SetFileCounter | ( | int | counter | ) | `[static]`

Reset the file counter, in case, for example, the same names are required each time.

void wxRichTextHTMLHandler::SetFontSizeMapping | ( | const wxArrayInt & | fontSizeMapping | ) |

Sets the mapping for converting point sizes to HTML font sizes.

There should be 7 elements, one for each HTML font size, each element specifying the maximum point size for that HTML font size. For example:

            wxArrayInt fontSizeMapping;
            fontSizeMapping.Add(7);
            fontSizeMapping.Add(9);
            fontSizeMapping.Add(11);
            fontSizeMapping.Add(12);
            fontSizeMapping.Add(14);
            fontSizeMapping.Add(22);
            fontSizeMapping.Add(100);

            htmlHandler.SetFontSizeMapping(fontSizeMapping);

void wxRichTextHTMLHandler::SetTempDir | ( | const wxString & | tempDir | ) |

Sets the directory for storing temporary files.

If empty, the system temporary directory will be used.

void wxRichTextHTMLHandler::SetTemporaryImageLocations | ( | const wxArrayString & | locations | ) |

Sets the list of image locations generated by the last operation.

|  | [ top ]