- Conversion rules
- Supported tags
- Managing the character set
In french: HTMLVersRTF
Converts an HTML string or an HTML buffer to an RTF string. The following operations are performed during the conversion:
- Deletion of HTML tags
- Conversion of HTML special characters
- Conversion of CR characters (Carriage Return) to spaces
- Conversion of multiple spaces to single spaces
The formatting is kept "as best as possible".
MyHTMLText is string = "<!--test-->'''''"e;Hello!"e;''"
Text is string = HTMLToRTF(MyHTMLText)
// Text is set to: "Hello"!
<Result> = HTMLToRTF(<Text in HTML format> [, <Charset used>])
<Result>: Character string
RTF text corresponding to the result of the HTML conversion. The encoding used is the one of the current character set of WINDEV or WEBDEV.
<Text in HTML format>: String or buffer
Text to convert.
<Charset used>: Optional Integer constant
Constant identifying the character set used to write the <Text in HTML format>. The current character set of WINDEV or WEBDEV is used by default (charsetCurrent constant). If any information about the character set used is found in the <Text in HTML format>, this information has priority over this parameter.
For more details on these constants, see Correspondence between languages, sub-languages, character sets and nations.
- The HTML tags are analyzed to keep the best possible formatting in the output text (CR characters, spaces, tabs, etc.). The formatting is kept as best as possible: bold, italic, colors, etc.
- The following elements do not appear in the RTF output:
- HTML tags
- content of the "header" (information in the <HEAD> tag)
- control texts
- SSL definitions
- CSS styles (except "color" attributes)
- Management of CR characters
- 2 Carriage Returns are inserted to replace the following tags: <P>, <H1> to <H6>, <TABLE>, <UL> or <OL>
- 1 Carriage Return is inserted to replace the following tags: <BR>, <TR>, <LI>, <DD> or <DIV>
- 1 single Carriage Return is inserted if several identical tags (<TR>, <LI>, <DD> or <DIV>) follow one another (except for <BR> tags)
- Management of arrays
- A CR character is inserted for each array row (<TR> tag).
- A tab is inserted for each array column (<TD> tag).
- Management of special characters
A special character is a character defined in the HTML standard. For example, a space can be written as " ". This standard is automatically used.
The unsupported tags are ignored: their content is taken into account as text.
The supported tags are as follows:
- <UL>: Line break + tab
- <OL>: Line break + tab
- <LI>: Tab
- <H1>: Line break above and below, bold and size
- <H2>: Line break above and below, bold and size
- <H3>: Line break above and below, bold and size
- <H4>: Line break above and below, bold and size
- <H5>: Line break above and below, bold and size
- <H6>: Line break above and below, bold and size
- <P>: Line break above and below
- <BR>: Line break
- <B>: Bold
- <STRONG>: Bold
- <I>: Italics
- <EM>: Italics
- <FONT>: Size and color
- <A HREF>: Hyperlink
- <SPAN>: Style: Color
- <DL>: Line break
- <DT>: Line break
- <DD>: Tab and line break
- <TABLE>: Line break
- <TR>: Line break
- <TD>: Elements separated by a tab
- <HEAD>: Content ignored, except for the parameters of the character set
- <STYLE>: Content ignored
- <SCRIPT>: Content ignored
- <!-- -->: Comments ignored
Managing the character set
To identify the character set used in the HTML text, HTMLToRTF uses the information in the CONTENT attribute of a <META> tag.
If this tag is not found, the character set used to write the HTML text must be specified in <Charset used>.
If the HTML content uses an Arabic character set and WINDEV/WEBDEV uses a French character set by default, the output text will have invalid characters.
- If the output text contains several question marks ("?"), it means that the characters of the character set used in the HTML document cannot be expressed with the characters of the current language.
- The UTF-8 character set is commonly used to encode Web pages.
Unit examples (WEBDEV): The HTMLTo functions
[ + ]
This example explains how to use the HTMLToRTF and HTMLToText functions of WLanguage.
This page is also available for…