Imported Upstream version 2.8.0
[platform/upstream/libxml2.git] / doc / devhelp / libxml2-HTMLtree.html
1 <?xml version="1.0" encoding="UTF-8"?>
2 <html>
3   <head>
4     <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
5     <title>HTMLtree: specific APIs to process HTML tree, especially serialization</title>
6     <meta name="generator" content="Libxml2 devhelp stylesheet"/>
7     <link rel="start" href="index.html" title="libxml2 Reference Manual"/>
8     <link rel="up" href="general.html" title="API"/>
9     <link rel="stylesheet" href="style.css" type="text/css"/>
10     <link rel="chapter" href="general.html" title="API"/>
11   </head>
12   <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
13     <table class="navigation" width="100%" summary="Navigation header" cellpadding="2" cellspacing="2">
14       <tr valign="middle">
15         <td>
16           <a accesskey="p" href="libxml2-HTMLparser.html">
17             <img src="left.png" width="24" height="24" border="0" alt="Prev"/>
18           </a>
19         </td>
20         <td>
21           <a accesskey="u" href="general.html">
22             <img src="up.png" width="24" height="24" border="0" alt="Up"/>
23           </a>
24         </td>
25         <td>
26           <a accesskey="h" href="index.html">
27             <img src="home.png" width="24" height="24" border="0" alt="Home"/>
28           </a>
29         </td>
30         <td>
31           <a accesskey="n" href="libxml2-SAX.html">
32             <img src="right.png" width="24" height="24" border="0" alt="Next"/>
33           </a>
34         </td>
35         <th width="100%" align="center">libxml2 Reference Manual</th>
36       </tr>
37     </table>
38     <h2>
39       <span class="refentrytitle">HTMLtree</span>
40     </h2>
41     <p>HTMLtree - specific APIs to process HTML tree, especially serialization</p>
42     <p>this module implements a few function needed to process tree in an HTML specific way. </p>
43     <p>Author(s): Daniel Veillard </p>
44     <div class="refsynopsisdiv">
45       <h2>Synopsis</h2>
46       <pre class="synopsis">#define <a href="#HTML_ENTITY_REF_NODE">HTML_ENTITY_REF_NODE</a>;
47 #define <a href="#HTML_COMMENT_NODE">HTML_COMMENT_NODE</a>;
48 #define <a href="#HTML_PRESERVE_NODE">HTML_PRESERVE_NODE</a>;
49 #define <a href="#HTML_TEXT_NODE">HTML_TEXT_NODE</a>;
50 #define <a href="#HTML_PI_NODE">HTML_PI_NODE</a>;
51 int     <a href="#htmlNodeDumpFileFormat">htmlNodeDumpFileFormat</a>            (FILE * out, <br/>                                       <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding, <br/>                                    int format);
52 void    <a href="#htmlDocDumpMemory">htmlDocDumpMemory</a>              (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** mem, <br/>                                      int * size);
53 int     <a href="#htmlSaveFile">htmlSaveFile</a>                        (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
54 int     <a href="#htmlDocDump">htmlDocDump</a>                  (FILE * f, <br/>                                         <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur);
55 void    <a href="#htmlDocDumpMemoryFormat">htmlDocDumpMemoryFormat</a>          (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** mem, <br/>                                      int * size, <br/>                                       int format);
56 int     <a href="#htmlIsBooleanAttr">htmlIsBooleanAttr</a>              (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name);
57 int     <a href="#htmlSaveFileFormat">htmlSaveFileFormat</a>            (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding, <br/>                                    int format);
58 void    <a href="#htmlNodeDumpFormatOutput">htmlNodeDumpFormatOutput</a>        (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding, <br/>                                    int format);
59 int     <a href="#htmlSetMetaEncoding">htmlSetMetaEncoding</a>          (<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br/>                                  const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * encoding);
60 int     <a href="#htmlSaveFileEnc">htmlSaveFileEnc</a>                  (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding);
61 void    <a href="#htmlNodeDumpOutput">htmlNodeDumpOutput</a>            (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding);
62 int     <a href="#htmlNodeDump">htmlNodeDump</a>                        (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
63 <a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>     <a href="#htmlNewDoc">htmlNewDoc</a>            (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * URI, <br/>                                         const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ExternalID);
64 const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *    <a href="#htmlGetMetaEncoding">htmlGetMetaEncoding</a>  (<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc);
65 void    <a href="#htmlNodeDumpFile">htmlNodeDumpFile</a>                (FILE * out, <br/>                                       <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur);
66 void    <a href="#htmlDocContentDumpFormatOutput">htmlDocContentDumpFormatOutput</a>    (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding, <br/>                                    int format);
67 <a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>     <a href="#htmlNewDocNoDtD">htmlNewDocNoDtD</a>          (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * URI, <br/>                                         const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ExternalID);
68 void    <a href="#htmlDocContentDumpOutput">htmlDocContentDumpOutput</a>        (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding);
69 </pre>
70     </div>
71     <div class="refsect1" lang="en">
72       <h2>Description</h2>
73     </div>
74     <div class="refsect1" lang="en">
75       <h2>Details</h2>
76       <div class="refsect2" lang="en">
77         <div class="refsect2" lang="en"><h3><a name="HTML_COMMENT_NODE">Macro </a>HTML_COMMENT_NODE</h3><pre class="programlisting">#define <a href="#HTML_COMMENT_NODE">HTML_COMMENT_NODE</a>;
78 </pre><p>Macro. A <a href="libxml2-SAX.html#comment">comment</a> in a HTML document is really implemented the same way as a <a href="libxml2-SAX.html#comment">comment</a> in an XML document.</p>
79 </div>
80         <hr/>
81         <div class="refsect2" lang="en"><h3><a name="HTML_ENTITY_REF_NODE">Macro </a>HTML_ENTITY_REF_NODE</h3><pre class="programlisting">#define <a href="#HTML_ENTITY_REF_NODE">HTML_ENTITY_REF_NODE</a>;
82 </pre><p>Macro. An entity <a href="libxml2-SAX.html#reference">reference</a> in a HTML document is really implemented the same way as an entity <a href="libxml2-SAX.html#reference">reference</a> in an XML document.</p>
83 </div>
84         <hr/>
85         <div class="refsect2" lang="en"><h3><a name="HTML_PI_NODE">Macro </a>HTML_PI_NODE</h3><pre class="programlisting">#define <a href="#HTML_PI_NODE">HTML_PI_NODE</a>;
86 </pre><p>Macro. A processing instruction in a HTML document is really implemented the same way as a processing instruction in an XML document.</p>
87 </div>
88         <hr/>
89         <div class="refsect2" lang="en"><h3><a name="HTML_PRESERVE_NODE">Macro </a>HTML_PRESERVE_NODE</h3><pre class="programlisting">#define <a href="#HTML_PRESERVE_NODE">HTML_PRESERVE_NODE</a>;
90 </pre><p>Macro. A preserved node in a HTML document is really implemented the same way as a CDATA section in an XML document.</p>
91 </div>
92         <hr/>
93         <div class="refsect2" lang="en"><h3><a name="HTML_TEXT_NODE">Macro </a>HTML_TEXT_NODE</h3><pre class="programlisting">#define <a href="#HTML_TEXT_NODE">HTML_TEXT_NODE</a>;
94 </pre><p>Macro. A text node in a HTML document is really implemented the same way as a text node in an XML document.</p>
95 </div>
96         <hr/>
97         <div class="refsect2" lang="en"><h3><a name="htmlDocContentDumpFormatOutput"/>htmlDocContentDumpFormatOutput ()</h3><pre class="programlisting">void    htmlDocContentDumpFormatOutput  (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding, <br/>                                    int format)<br/>
98 </pre><p>Dump an HTML document.</p>
99 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div></div>
100         <hr/>
101         <div class="refsect2" lang="en"><h3><a name="htmlDocContentDumpOutput"/>htmlDocContentDumpOutput ()</h3><pre class="programlisting">void        htmlDocContentDumpOutput        (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding)<br/>
102 </pre><p>Dump an HTML document. Formating return/spaces are added.</p>
103 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr></tbody></table></div></div>
104         <hr/>
105         <div class="refsect2" lang="en"><h3><a name="htmlDocDump"/>htmlDocDump ()</h3><pre class="programlisting">int   htmlDocDump                     (FILE * f, <br/>                                         <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br/>
106 </pre><p>Dump an HTML document to an open FILE.</p>
107 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>f</tt></i>:</span></td><td>the FILE*</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div></div>
108         <hr/>
109         <div class="refsect2" lang="en"><h3><a name="htmlDocDumpMemory"/>htmlDocDumpMemory ()</h3><pre class="programlisting">void      htmlDocDumpMemory               (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** mem, <br/>                                      int * size)<br/>
110 </pre><p>Dump an HTML document in memory and return the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * and it's size. It's up to the caller to free the memory.</p>
111 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr></tbody></table></div></div>
112         <hr/>
113         <div class="refsect2" lang="en"><h3><a name="htmlDocDumpMemoryFormat"/>htmlDocDumpMemoryFormat ()</h3><pre class="programlisting">void  htmlDocDumpMemoryFormat         (<a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> ** mem, <br/>                                      int * size, <br/>                                       int format)<br/>
114 </pre><p>Dump an HTML document in memory and return the <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * and it's size. It's up to the caller to free the memory.</p>
115 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>mem</tt></i>:</span></td><td>OUT: the memory pointer</td></tr><tr><td><span class="term"><i><tt>size</tt></i>:</span></td><td>OUT: the memory length</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div></div>
116         <hr/>
117         <div class="refsect2" lang="en"><h3><a name="htmlGetMetaEncoding"/>htmlGetMetaEncoding ()</h3><pre class="programlisting">const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> *  htmlGetMetaEncoding     (<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc)<br/>
118 </pre><p>Encoding definition lookup in the Meta tags</p>
119 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the current encoding as flagged in the HTML source</td></tr></tbody></table></div></div>
120         <hr/>
121         <div class="refsect2" lang="en"><h3><a name="htmlIsBooleanAttr"/>htmlIsBooleanAttr ()</h3><pre class="programlisting">int       htmlIsBooleanAttr               (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * name)<br/>
122 </pre><p>Determine if a given <a href="libxml2-SAX.html#attribute">attribute</a> is a boolean attribute.</p>
123 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>name</tt></i>:</span></td><td>the name of the <a href="libxml2-SAX.html#attribute">attribute</a> to check</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>false if the <a href="libxml2-SAX.html#attribute">attribute</a> is not boolean, true otherwise.</td></tr></tbody></table></div></div>
124         <hr/>
125         <div class="refsect2" lang="en"><h3><a name="htmlNewDoc"/>htmlNewDoc ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>     htmlNewDoc              (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * URI, <br/>                                         const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ExternalID)<br/>
126 </pre><p>Creates a new HTML document</p>
127 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI for the dtd, or NULL</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID of the DTD, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document</td></tr></tbody></table></div></div>
128         <hr/>
129         <div class="refsect2" lang="en"><h3><a name="htmlNewDocNoDtD"/>htmlNewDocNoDtD ()</h3><pre class="programlisting"><a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a>   htmlNewDocNoDtD         (const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * URI, <br/>                                         const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * ExternalID)<br/>
130 </pre><p>Creates a new HTML document without a DTD node if @URI and @ExternalID are NULL</p>
131 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>URI</tt></i>:</span></td><td>URI for the dtd, or NULL</td></tr><tr><td><span class="term"><i><tt>ExternalID</tt></i>:</span></td><td>the external ID of the DTD, or NULL</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>a new document, do not initialize the DTD if not provided</td></tr></tbody></table></div></div>
132         <hr/>
133         <div class="refsect2" lang="en"><h3><a name="htmlNodeDump"/>htmlNodeDump ()</h3><pre class="programlisting">int htmlNodeDump                    (<a href="libxml2-tree.html#xmlBufferPtr">xmlBufferPtr</a> buf, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br/>
134 </pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns are added.</p>
135 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of error</td></tr></tbody></table></div></div>
136         <hr/>
137         <div class="refsect2" lang="en"><h3><a name="htmlNodeDumpFile"/>htmlNodeDumpFile ()</h3><pre class="programlisting">void        htmlNodeDumpFile                (FILE * out, <br/>                                       <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur)<br/>
138 </pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns are added.</p>
139 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr></tbody></table></div></div>
140         <hr/>
141         <div class="refsect2" lang="en"><h3><a name="htmlNodeDumpFileFormat"/>htmlNodeDumpFileFormat ()</h3><pre class="programlisting">int     htmlNodeDumpFileFormat          (FILE * out, <br/>                                       <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding, <br/>                                    int format)<br/>
142 </pre><p>Dump an HTML node, recursive behaviour,children are printed too. TODO: if encoding == NULL try to save in the doc encoding</p>
143 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>out</tt></i>:</span></td><td>the FILE pointer</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div></div>
144         <hr/>
145         <div class="refsect2" lang="en"><h3><a name="htmlNodeDumpFormatOutput"/>htmlNodeDumpFormatOutput ()</h3><pre class="programlisting">void        htmlNodeDumpFormatOutput        (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding, <br/>                                    int format)<br/>
146 </pre><p>Dump an HTML node, recursive behaviour,children are printed too.</p>
147 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr></tbody></table></div></div>
148         <hr/>
149         <div class="refsect2" lang="en"><h3><a name="htmlNodeDumpOutput"/>htmlNodeDumpOutput ()</h3><pre class="programlisting">void    htmlNodeDumpOutput              (<a href="libxml2-tree.html#xmlOutputBufferPtr">xmlOutputBufferPtr</a> buf, <br/>                                        <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> doc, <br/>                                  <a href="libxml2-tree.html#xmlNodePtr">xmlNodePtr</a> cur, <br/>                                        const char * encoding)<br/>
150 </pre><p>Dump an HTML node, recursive behaviour,children are printed too, and formatting returns/spaces are added.</p>
151 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>buf</tt></i>:</span></td><td>the HTML buffer output</td></tr><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the current node</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr></tbody></table></div></div>
152         <hr/>
153         <div class="refsect2" lang="en"><h3><a name="htmlSaveFile"/>htmlSaveFile ()</h3><pre class="programlisting">int htmlSaveFile                    (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur)<br/>
154 </pre><p>Dump an HTML document to a file. If @filename is "-" the stdout file is used.</p>
155 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename (or URL)</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div></div>
156         <hr/>
157         <div class="refsect2" lang="en"><h3><a name="htmlSaveFileEnc"/>htmlSaveFileEnc ()</h3><pre class="programlisting">int   htmlSaveFileEnc                 (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding)<br/>
158 </pre><p>Dump an HTML document to a file using a given encoding and formatting returns/spaces are added.</p>
159 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div></div>
160         <hr/>
161         <div class="refsect2" lang="en"><h3><a name="htmlSaveFileFormat"/>htmlSaveFileFormat ()</h3><pre class="programlisting">int     htmlSaveFileFormat              (const char * filename, <br/>                                    <a href="libxml2-tree.html#xmlDocPtr">xmlDocPtr</a> cur, <br/>                                  const char * encoding, <br/>                                    int format)<br/>
162 </pre><p>Dump an HTML document to a file using a given encoding.</p>
163 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>filename</tt></i>:</span></td><td>the filename</td></tr><tr><td><span class="term"><i><tt>cur</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the document encoding</td></tr><tr><td><span class="term"><i><tt>format</tt></i>:</span></td><td>should formatting spaces been added</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>the number of byte written or -1 in case of failure.</td></tr></tbody></table></div></div>
164         <hr/>
165         <div class="refsect2" lang="en"><h3><a name="htmlSetMetaEncoding"/>htmlSetMetaEncoding ()</h3><pre class="programlisting">int   htmlSetMetaEncoding             (<a href="libxml2-HTMLparser.html#htmlDocPtr">htmlDocPtr</a> doc, <br/>                                  const <a href="libxml2-xmlstring.html#xmlChar">xmlChar</a> * encoding)<br/>
166 </pre><p>Sets the current encoding in the Meta tags NOTE: this will not change the document content encoding, just the META flag associated.</p>
167 <div class="variablelist"><table border="0"><col align="left"/><tbody><tr><td><span class="term"><i><tt>doc</tt></i>:</span></td><td>the document</td></tr><tr><td><span class="term"><i><tt>encoding</tt></i>:</span></td><td>the encoding string</td></tr><tr><td><span class="term"><i><tt>Returns</tt></i>:</span></td><td>0 in case of success and -1 in case of error</td></tr></tbody></table></div></div>
168         <hr/>
169       </div>
170     </div>
171   </body>
172 </html>