Imported Upstream version 2.6.5
[platform/upstream/freetype2.git] / docs / reference / ft2-glyph_stroker.html
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
2 "http://www.w3.org/TR/html4/loose.dtd">
3 <html>
4 <head>
5 <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
6 <title>FreeType-2.6.5 API Reference</title>
7 <style type="text/css">
8   a:link { color: #0000EF; }
9   a:visited { color: #51188E; }
10   a:hover { color: #FF0000; }
11
12   body { font-family: Verdana, Geneva, Arial, Helvetica, serif;
13          color: #000000;
14          background: #FFFFFF;
15          width: 87%;
16          margin: auto; }
17
18   div.section { width: 75%;
19                 margin: auto; }
20   div.section hr { margin: 4ex 0 1ex 0; }
21   div.section h4 { background-color: #EEEEFF;
22                    font-size: medium;
23                    font-style: oblique;
24                    font-weight: bold;
25                    margin: 3ex 0 1.5ex 9%;
26                    padding: 0.3ex 0 0.3ex 1%; }
27   div.section p { margin: 1.5ex 0 1.5ex 10%; }
28   div.section pre { margin: 3ex 0 3ex 9%;
29                     background-color: #D6E8FF;
30                     padding: 2ex 0 2ex 1%; }
31   div.section table.fields { width: 90%;
32                              margin: 1.5ex 0 1.5ex 10%; }
33   div.section table.toc { width: 95%;
34                           margin: 1.5ex 0 1.5ex 5%; }
35   div.timestamp { text-align: center;
36                   font-size: 69%;
37                   margin: 1.5ex 0 1.5ex 0; }
38
39   h1 { text-align: center; }
40   h3 { font-size: medium;
41        margin: 4ex 0 1.5ex 0; }
42
43   p { text-align: justify; }
44
45   pre.colored { color: blue; }
46
47   span.keyword { font-family: monospace;
48                  text-align: left;
49                  white-space: pre;
50                  color: darkblue; }
51
52   table.fields td.val { font-weight: bold;
53                         text-align: right;
54                         width: 30%;
55                         vertical-align: baseline;
56                         padding: 1ex 1em 1ex 0; }
57   table.fields td.desc { vertical-align: baseline;
58                          padding: 1ex 0 1ex 1em; }
59   table.fields td.desc p:first-child { margin: 0; }
60   table.fields td.desc p { margin: 1.5ex 0 0 0; }
61   table.index { margin: 6ex auto 6ex auto;
62                 border: 0;
63                 border-collapse: separate;
64                 border-spacing: 1em 0.3ex; }
65   table.index tr { padding: 0; }
66   table.index td { padding: 0; }
67   table.index-toc-link { width: 100%;
68                          border: 0;
69                          border-spacing: 0;
70                          margin: 1ex 0 1ex 0; }
71   table.index-toc-link td.left { padding: 0 0.5em 0 0.5em;
72                                  font-size: 83%;
73                                  text-align: left; }
74   table.index-toc-link td.middle { padding: 0 0.5em 0 0.5em;
75                                    font-size: 83%;
76                                    text-align: center; }
77   table.index-toc-link td.right { padding: 0 0.5em 0 0.5em;
78                                   font-size: 83%;
79                                   text-align: right; }
80   table.synopsis { margin: 6ex auto 6ex auto;
81                    border: 0;
82                    border-collapse: separate;
83                    border-spacing: 2em 0.6ex; }
84   table.synopsis tr { padding: 0; }
85   table.synopsis td { padding: 0; }
86   table.toc td.link { width: 30%;
87                       text-align: right;
88                       vertical-align: baseline;
89                       padding: 1ex 1em 1ex 0; }
90   table.toc td.desc { vertical-align: baseline;
91                       padding: 1ex 0 1ex 1em;
92                       text-align: left; }
93   table.toc td.desc p:first-child { margin: 0;
94                                     text-align: left; }
95   table.toc td.desc p { margin: 1.5ex 0 0 0;
96                         text-align: left; }
97
98 </style>
99 </head>
100 <body>
101
102 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table>
103 <h1>FreeType-2.6.5 API Reference</h1>
104
105 <h1 id="glyph_stroker">Glyph Stroker</h1>
106 <h2>Synopsis</h2>
107 <table class="synopsis">
108 <tr><td><a href="#FT_Stroker">FT_Stroker</a></td><td><a href="#FT_Stroker_ParseOutline">FT_Stroker_ParseOutline</a></td></tr>
109 <tr><td>&nbsp;</td><td><a href="#FT_Stroker_Done">FT_Stroker_Done</a></td></tr>
110 <tr><td><a href="#FT_Stroker_LineJoin">FT_Stroker_LineJoin</a></td><td>&nbsp;</td></tr>
111 <tr><td><a href="#FT_Stroker_LineCap">FT_Stroker_LineCap</a></td><td><a href="#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a></td></tr>
112 <tr><td><a href="#FT_StrokerBorder">FT_StrokerBorder</a></td><td><a href="#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a></td></tr>
113 <tr><td>&nbsp;</td><td>&nbsp;</td></tr>
114 <tr><td><a href="#FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a></td><td><a href="#FT_Stroker_LineTo">FT_Stroker_LineTo</a></td></tr>
115 <tr><td><a href="#FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a></td><td><a href="#FT_Stroker_ConicTo">FT_Stroker_ConicTo</a></td></tr>
116 <tr><td>&nbsp;</td><td><a href="#FT_Stroker_CubicTo">FT_Stroker_CubicTo</a></td></tr>
117 <tr><td><a href="#FT_Glyph_Stroke">FT_Glyph_Stroke</a></td><td>&nbsp;</td></tr>
118 <tr><td><a href="#FT_Glyph_StrokeBorder">FT_Glyph_StrokeBorder</a></td><td><a href="#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a></td></tr>
119 <tr><td>&nbsp;</td><td><a href="#FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a></td></tr>
120 <tr><td><a href="#FT_Stroker_New">FT_Stroker_New</a></td><td><a href="#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a></td></tr>
121 <tr><td><a href="#FT_Stroker_Set">FT_Stroker_Set</a></td><td><a href="#FT_Stroker_Export">FT_Stroker_Export</a></td></tr>
122 <tr><td><a href="#FT_Stroker_Rewind">FT_Stroker_Rewind</a></td><td></td></tr>
123 </table>
124
125
126 <p>This component generates stroked outlines of a given vectorial glyph. It also allows you to retrieve the &lsquo;outside&rsquo; and/or the &lsquo;inside&rsquo; borders of the stroke.</p>
127 <p>This can be useful to generate &lsquo;bordered&rsquo; glyph, i.e., glyphs displayed with a coloured (and anti-aliased) border around their shape.</p>
128
129 <div class="section">
130 <h3 id="FT_Stroker">FT_Stroker</h3>
131 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
132 <pre>
133   <span class="keyword">typedef</span> <span class="keyword">struct</span> FT_StrokerRec_*  <b>FT_Stroker</b>;
134 </pre>
135
136 <p>Opaque handle to a path stroker object.</p>
137
138 <hr>
139 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
140
141 <div class="section">
142 <h3 id="FT_Stroker_LineJoin">FT_Stroker_LineJoin</h3>
143 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
144 <pre>
145   <span class="keyword">typedef</span> <span class="keyword">enum</span>  FT_Stroker_LineJoin_
146   {
147     <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_ROUND">FT_STROKER_LINEJOIN_ROUND</a>          = 0,
148     <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_BEVEL">FT_STROKER_LINEJOIN_BEVEL</a>          = 1,
149     <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_MITER_VARIABLE">FT_STROKER_LINEJOIN_MITER_VARIABLE</a> = 2,
150     <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_MITER">FT_STROKER_LINEJOIN_MITER</a>          = <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_MITER_VARIABLE">FT_STROKER_LINEJOIN_MITER_VARIABLE</a>,
151     <a href="ft2-glyph_stroker.html#FT_STROKER_LINEJOIN_MITER_FIXED">FT_STROKER_LINEJOIN_MITER_FIXED</a>    = 3
152
153   } <b>FT_Stroker_LineJoin</b>;
154 </pre>
155
156 <p>These values determine how two joining lines are rendered in a stroker.</p>
157
158 <h4>values</h4>
159 <table class="fields">
160 <tr><td class="val" id="FT_STROKER_LINEJOIN_ROUND">FT_STROKER_LINEJOIN_ROUND</td><td class="desc">
161 <p>Used to render rounded line joins. Circular arcs are used to join two lines smoothly.</p>
162 </td></tr>
163 <tr><td class="val" id="FT_STROKER_LINEJOIN_BEVEL">FT_STROKER_LINEJOIN_BEVEL</td><td class="desc">
164 <p>Used to render beveled line joins. The outer corner of the joined lines is filled by enclosing the triangular region of the corner with a straight line between the outer corners of each stroke.</p>
165 </td></tr>
166 <tr><td class="val" id="FT_STROKER_LINEJOIN_MITER_FIXED">FT_STROKER_LINEJOIN_MITER_FIXED</td><td class="desc">
167 <p>Used to render mitered line joins, with fixed bevels if the miter limit is exceeded. The outer edges of the strokes for the two segments are extended until they meet at an angle. If the segments meet at too sharp an angle (such that the miter would extend from the intersection of the segments a distance greater than the product of the miter limit value and the border radius), then a bevel join (see above) is used instead. This prevents long spikes being created. FT_STROKER_LINEJOIN_MITER_FIXED generates a miter line join as used in PostScript and PDF.</p>
168 </td></tr>
169 <tr><td class="val" id="FT_STROKER_LINEJOIN_MITER_VARIABLE">FT_STROKER_LINEJOIN_MITER_VARIABLE</td><td class="desc">
170 <p></p>
171 </td></tr>
172 <tr><td class="val" id="FT_STROKER_LINEJOIN_MITER">FT_STROKER_LINEJOIN_MITER</td><td class="desc">
173 <p>Used to render mitered line joins, with variable bevels if the miter limit is exceeded. The intersection of the strokes is clipped at a line perpendicular to the bisector of the angle between the strokes, at the distance from the intersection of the segments equal to the product of the miter limit value and the border radius. This prevents long spikes being created. FT_STROKER_LINEJOIN_MITER_VARIABLE generates a mitered line join as used in XPS. FT_STROKER_LINEJOIN_MITER is an alias for FT_STROKER_LINEJOIN_MITER_VARIABLE, retained for backwards compatibility.</p>
174 </td></tr>
175 </table>
176
177 <hr>
178 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
179
180 <div class="section">
181 <h3 id="FT_Stroker_LineCap">FT_Stroker_LineCap</h3>
182 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
183 <pre>
184   <span class="keyword">typedef</span> <span class="keyword">enum</span>  FT_Stroker_LineCap_
185   {
186     <a href="ft2-glyph_stroker.html#FT_STROKER_LINECAP_BUTT">FT_STROKER_LINECAP_BUTT</a> = 0,
187     <a href="ft2-glyph_stroker.html#FT_STROKER_LINECAP_ROUND">FT_STROKER_LINECAP_ROUND</a>,
188     <a href="ft2-glyph_stroker.html#FT_STROKER_LINECAP_SQUARE">FT_STROKER_LINECAP_SQUARE</a>
189
190   } <b>FT_Stroker_LineCap</b>;
191 </pre>
192
193 <p>These values determine how the end of opened sub-paths are rendered in a stroke.</p>
194
195 <h4>values</h4>
196 <table class="fields">
197 <tr><td class="val" id="FT_STROKER_LINECAP_BUTT">FT_STROKER_LINECAP_BUTT</td><td class="desc">
198 <p>The end of lines is rendered as a full stop on the last point itself.</p>
199 </td></tr>
200 <tr><td class="val" id="FT_STROKER_LINECAP_ROUND">FT_STROKER_LINECAP_ROUND</td><td class="desc">
201 <p>The end of lines is rendered as a half-circle around the last point.</p>
202 </td></tr>
203 <tr><td class="val" id="FT_STROKER_LINECAP_SQUARE">FT_STROKER_LINECAP_SQUARE</td><td class="desc">
204 <p>The end of lines is rendered as a square around the last point.</p>
205 </td></tr>
206 </table>
207
208 <hr>
209 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
210
211 <div class="section">
212 <h3 id="FT_StrokerBorder">FT_StrokerBorder</h3>
213 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
214 <pre>
215   <span class="keyword">typedef</span> <span class="keyword">enum</span>  FT_StrokerBorder_
216   {
217     <a href="ft2-glyph_stroker.html#FT_STROKER_BORDER_LEFT">FT_STROKER_BORDER_LEFT</a> = 0,
218     <a href="ft2-glyph_stroker.html#FT_STROKER_BORDER_RIGHT">FT_STROKER_BORDER_RIGHT</a>
219
220   } <b>FT_StrokerBorder</b>;
221 </pre>
222
223 <p>These values are used to select a given stroke border in <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</a>.</p>
224
225 <h4>values</h4>
226 <table class="fields">
227 <tr><td class="val" id="FT_STROKER_BORDER_LEFT">FT_STROKER_BORDER_LEFT</td><td class="desc">
228 <p>Select the left border, relative to the drawing direction.</p>
229 </td></tr>
230 <tr><td class="val" id="FT_STROKER_BORDER_RIGHT">FT_STROKER_BORDER_RIGHT</td><td class="desc">
231 <p>Select the right border, relative to the drawing direction.</p>
232 </td></tr>
233 </table>
234
235 <h4>note</h4>
236 <p>Applications are generally interested in the &lsquo;inside&rsquo; and &lsquo;outside&rsquo; borders. However, there is no direct mapping between these and the &lsquo;left&rsquo; and &lsquo;right&rsquo; ones, since this really depends on the glyph's drawing orientation, which varies between font formats.</p>
237 <p>You can however use <a href="ft2-glyph_stroker.html#FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</a> and <a href="ft2-glyph_stroker.html#FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</a> to get these.</p>
238
239 <hr>
240 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
241
242 <div class="section">
243 <h3 id="FT_Outline_GetInsideBorder">FT_Outline_GetInsideBorder</h3>
244 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
245 <pre>
246   FT_EXPORT( <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> )
247   <b>FT_Outline_GetInsideBorder</b>( <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>*  outline );
248 </pre>
249
250 <p>Retrieve the <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> value corresponding to the &lsquo;inside&rsquo; borders of a given outline.</p>
251
252 <h4>input</h4>
253 <table class="fields">
254 <tr><td class="val" id="outline">outline</td><td class="desc">
255 <p>The source outline handle.</p>
256 </td></tr>
257 </table>
258
259 <h4>return</h4>
260 <p>The border index. <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_RIGHT</a> for empty or invalid outlines.</p>
261
262 <hr>
263 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
264
265 <div class="section">
266 <h3 id="FT_Outline_GetOutsideBorder">FT_Outline_GetOutsideBorder</h3>
267 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
268 <pre>
269   FT_EXPORT( <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> )
270   <b>FT_Outline_GetOutsideBorder</b>( <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>*  outline );
271 </pre>
272
273 <p>Retrieve the <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a> value corresponding to the &lsquo;outside&rsquo; borders of a given outline.</p>
274
275 <h4>input</h4>
276 <table class="fields">
277 <tr><td class="val" id="outline">outline</td><td class="desc">
278 <p>The source outline handle.</p>
279 </td></tr>
280 </table>
281
282 <h4>return</h4>
283 <p>The border index. <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_STROKER_BORDER_LEFT</a> for empty or invalid outlines.</p>
284
285 <hr>
286 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
287
288 <div class="section">
289 <h3 id="FT_Glyph_Stroke">FT_Glyph_Stroke</h3>
290 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
291 <pre>
292   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
293   <b>FT_Glyph_Stroke</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a>    *pglyph,
294                    <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>   stroker,
295                    <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>      destroy );
296 </pre>
297
298 <p>Stroke a given outline glyph object with a given stroker.</p>
299
300 <h4>inout</h4>
301 <table class="fields">
302 <tr><td class="val" id="pglyph">pglyph</td><td class="desc">
303 <p>Source glyph handle on input, new glyph handle on output.</p>
304 </td></tr>
305 </table>
306
307 <h4>input</h4>
308 <table class="fields">
309 <tr><td class="val" id="stroker">stroker</td><td class="desc">
310 <p>A stroker handle.</p>
311 </td></tr>
312 <tr><td class="val" id="destroy">destroy</td><td class="desc">
313 <p>A Boolean. If&nbsp;1, the source glyph object is destroyed on success.</p>
314 </td></tr>
315 </table>
316
317 <h4>return</h4>
318 <p>FreeType error code. 0&nbsp;means success.</p>
319
320 <h4>note</h4>
321 <p>The source glyph is untouched in case of error.</p>
322 <p>Adding stroke may yield a significantly wider and taller glyph depending on how large of a radius was used to stroke the glyph. You may need to manually adjust horizontal and vertical advance amounts to account for this added size.</p>
323
324 <hr>
325 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
326
327 <div class="section">
328 <h3 id="FT_Glyph_StrokeBorder">FT_Glyph_StrokeBorder</h3>
329 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
330 <pre>
331   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
332   <b>FT_Glyph_StrokeBorder</b>( <a href="ft2-glyph_management.html#FT_Glyph">FT_Glyph</a>    *pglyph,
333                          <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>   stroker,
334                          <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>      inside,
335                          <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>      destroy );
336 </pre>
337
338 <p>Stroke a given outline glyph object with a given stroker, but only return either its inside or outside border.</p>
339
340 <h4>inout</h4>
341 <table class="fields">
342 <tr><td class="val" id="pglyph">pglyph</td><td class="desc">
343 <p>Source glyph handle on input, new glyph handle on output.</p>
344 </td></tr>
345 </table>
346
347 <h4>input</h4>
348 <table class="fields">
349 <tr><td class="val" id="stroker">stroker</td><td class="desc">
350 <p>A stroker handle.</p>
351 </td></tr>
352 <tr><td class="val" id="inside">inside</td><td class="desc">
353 <p>A Boolean. If&nbsp;1, return the inside border, otherwise the outside border.</p>
354 </td></tr>
355 <tr><td class="val" id="destroy">destroy</td><td class="desc">
356 <p>A Boolean. If&nbsp;1, the source glyph object is destroyed on success.</p>
357 </td></tr>
358 </table>
359
360 <h4>return</h4>
361 <p>FreeType error code. 0&nbsp;means success.</p>
362
363 <h4>note</h4>
364 <p>The source glyph is untouched in case of error.</p>
365 <p>Adding stroke may yield a significantly wider and taller glyph depending on how large of a radius was used to stroke the glyph. You may need to manually adjust horizontal and vertical advance amounts to account for this added size.</p>
366
367 <hr>
368 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
369
370 <div class="section">
371 <h3 id="FT_Stroker_New">FT_Stroker_New</h3>
372 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
373 <pre>
374   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
375   <b>FT_Stroker_New</b>( <a href="ft2-base_interface.html#FT_Library">FT_Library</a>   library,
376                   <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  *astroker );
377 </pre>
378
379 <p>Create a new stroker object.</p>
380
381 <h4>input</h4>
382 <table class="fields">
383 <tr><td class="val" id="library">library</td><td class="desc">
384 <p>FreeType library handle.</p>
385 </td></tr>
386 </table>
387
388 <h4>output</h4>
389 <table class="fields">
390 <tr><td class="val" id="astroker">astroker</td><td class="desc">
391 <p>A new stroker object handle. NULL in case of error.</p>
392 </td></tr>
393 </table>
394
395 <h4>return</h4>
396 <p>FreeType error code. 0&nbsp;means success.</p>
397
398 <hr>
399 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
400
401 <div class="section">
402 <h3 id="FT_Stroker_Set">FT_Stroker_Set</h3>
403 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
404 <pre>
405   FT_EXPORT( <span class="keyword">void</span> )
406   <b>FT_Stroker_Set</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>           stroker,
407                   <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>             radius,
408                   <a href="ft2-glyph_stroker.html#FT_Stroker_LineCap">FT_Stroker_LineCap</a>   line_cap,
409                   <a href="ft2-glyph_stroker.html#FT_Stroker_LineJoin">FT_Stroker_LineJoin</a>  line_join,
410                   <a href="ft2-basic_types.html#FT_Fixed">FT_Fixed</a>             miter_limit );
411 </pre>
412
413 <p>Reset a stroker object's attributes.</p>
414
415 <h4>input</h4>
416 <table class="fields">
417 <tr><td class="val" id="stroker">stroker</td><td class="desc">
418 <p>The target stroker handle.</p>
419 </td></tr>
420 <tr><td class="val" id="radius">radius</td><td class="desc">
421 <p>The border radius.</p>
422 </td></tr>
423 <tr><td class="val" id="line_cap">line_cap</td><td class="desc">
424 <p>The line cap style.</p>
425 </td></tr>
426 <tr><td class="val" id="line_join">line_join</td><td class="desc">
427 <p>The line join style.</p>
428 </td></tr>
429 <tr><td class="val" id="miter_limit">miter_limit</td><td class="desc">
430 <p>The miter limit for the FT_STROKER_LINEJOIN_MITER_FIXED and FT_STROKER_LINEJOIN_MITER_VARIABLE line join styles, expressed as 16.16 fixed-point value.</p>
431 </td></tr>
432 </table>
433
434 <h4>note</h4>
435 <p>The radius is expressed in the same units as the outline coordinates.</p>
436 <p>This function calls <a href="ft2-glyph_stroker.html#FT_Stroker_Rewind">FT_Stroker_Rewind</a> automatically.</p>
437
438 <hr>
439 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
440
441 <div class="section">
442 <h3 id="FT_Stroker_Rewind">FT_Stroker_Rewind</h3>
443 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
444 <pre>
445   FT_EXPORT( <span class="keyword">void</span> )
446   <b>FT_Stroker_Rewind</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker );
447 </pre>
448
449 <p>Reset a stroker object without changing its attributes. You should call this function before beginning a new series of calls to <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> or <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
450
451 <h4>input</h4>
452 <table class="fields">
453 <tr><td class="val" id="stroker">stroker</td><td class="desc">
454 <p>The target stroker handle.</p>
455 </td></tr>
456 </table>
457
458 <hr>
459 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
460
461 <div class="section">
462 <h3 id="FT_Stroker_ParseOutline">FT_Stroker_ParseOutline</h3>
463 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
464 <pre>
465   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
466   <b>FT_Stroker_ParseOutline</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>   stroker,
467                            <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>*  outline,
468                            <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>      opened );
469 </pre>
470
471 <p>A convenience function used to parse a whole outline with the stroker. The resulting outline(s) can be retrieved later by functions like <a href="ft2-glyph_stroker.html#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_Export">FT_Stroker_Export</a>.</p>
472
473 <h4>input</h4>
474 <table class="fields">
475 <tr><td class="val" id="stroker">stroker</td><td class="desc">
476 <p>The target stroker handle.</p>
477 </td></tr>
478 <tr><td class="val" id="outline">outline</td><td class="desc">
479 <p>The source outline.</p>
480 </td></tr>
481 <tr><td class="val" id="opened">opened</td><td class="desc">
482 <p>A boolean. If&nbsp;1, the outline is treated as an open path instead of a closed one.</p>
483 </td></tr>
484 </table>
485
486 <h4>return</h4>
487 <p>FreeType error code. 0&nbsp;means success.</p>
488
489 <h4>note</h4>
490 <p>If &lsquo;opened&rsquo; is&nbsp;0 (the default), the outline is treated as a closed path, and the stroker generates two distinct &lsquo;border&rsquo; outlines.</p>
491 <p>If &lsquo;opened&rsquo; is&nbsp;1, the outline is processed as an open path, and the stroker generates a single &lsquo;stroke&rsquo; outline.</p>
492 <p>This function calls <a href="ft2-glyph_stroker.html#FT_Stroker_Rewind">FT_Stroker_Rewind</a> automatically.</p>
493
494 <hr>
495 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
496
497 <div class="section">
498 <h3 id="FT_Stroker_Done">FT_Stroker_Done</h3>
499 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
500 <pre>
501   FT_EXPORT( <span class="keyword">void</span> )
502   <b>FT_Stroker_Done</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker );
503 </pre>
504
505 <p>Destroy a stroker object.</p>
506
507 <h4>input</h4>
508 <table class="fields">
509 <tr><td class="val" id="stroker">stroker</td><td class="desc">
510 <p>A stroker handle. Can be NULL.</p>
511 </td></tr>
512 </table>
513
514 <hr>
515 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
516
517 <div class="section">
518 <h3 id="FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</h3>
519 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
520 <pre>
521   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
522   <b>FT_Stroker_BeginSubPath</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker,
523                            <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  to,
524                            <a href="ft2-basic_types.html#FT_Bool">FT_Bool</a>     open );
525 </pre>
526
527 <p>Start a new sub-path in the stroker.</p>
528
529 <h4>input</h4>
530 <table class="fields">
531 <tr><td class="val" id="stroker">stroker</td><td class="desc">
532 <p>The target stroker handle.</p>
533 </td></tr>
534 <tr><td class="val" id="to">to</td><td class="desc">
535 <p>A pointer to the start vector.</p>
536 </td></tr>
537 <tr><td class="val" id="open">open</td><td class="desc">
538 <p>A boolean. If&nbsp;1, the sub-path is treated as an open one.</p>
539 </td></tr>
540 </table>
541
542 <h4>return</h4>
543 <p>FreeType error code. 0&nbsp;means success.</p>
544
545 <h4>note</h4>
546 <p>This function is useful when you need to stroke a path that is not stored as an <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> object.</p>
547
548 <hr>
549 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
550
551 <div class="section">
552 <h3 id="FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</h3>
553 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
554 <pre>
555   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
556   <b>FT_Stroker_EndSubPath</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker );
557 </pre>
558
559 <p>Close the current sub-path in the stroker.</p>
560
561 <h4>input</h4>
562 <table class="fields">
563 <tr><td class="val" id="stroker">stroker</td><td class="desc">
564 <p>The target stroker handle.</p>
565 </td></tr>
566 </table>
567
568 <h4>return</h4>
569 <p>FreeType error code. 0&nbsp;means success.</p>
570
571 <h4>note</h4>
572 <p>You should call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a>. If the subpath was not &lsquo;opened&rsquo;, this function &lsquo;draws&rsquo; a single line segment to the start position when needed.</p>
573
574 <hr>
575 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
576
577 <div class="section">
578 <h3 id="FT_Stroker_LineTo">FT_Stroker_LineTo</h3>
579 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
580 <pre>
581   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
582   <b>FT_Stroker_LineTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker,
583                      <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  to );
584 </pre>
585
586 <p>&lsquo;Draw&rsquo; a single line segment in the stroker's current sub-path, from the last position.</p>
587
588 <h4>input</h4>
589 <table class="fields">
590 <tr><td class="val" id="stroker">stroker</td><td class="desc">
591 <p>The target stroker handle.</p>
592 </td></tr>
593 <tr><td class="val" id="to">to</td><td class="desc">
594 <p>A pointer to the destination point.</p>
595 </td></tr>
596 </table>
597
598 <h4>return</h4>
599 <p>FreeType error code. 0&nbsp;means success.</p>
600
601 <h4>note</h4>
602 <p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
603
604 <hr>
605 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
606
607 <div class="section">
608 <h3 id="FT_Stroker_ConicTo">FT_Stroker_ConicTo</h3>
609 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
610 <pre>
611   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
612   <b>FT_Stroker_ConicTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker,
613                       <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  control,
614                       <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  to );
615 </pre>
616
617 <p>&lsquo;Draw&rsquo; a single quadratic Bézier in the stroker's current sub-path, from the last position.</p>
618
619 <h4>input</h4>
620 <table class="fields">
621 <tr><td class="val" id="stroker">stroker</td><td class="desc">
622 <p>The target stroker handle.</p>
623 </td></tr>
624 <tr><td class="val" id="control">control</td><td class="desc">
625 <p>A pointer to a Bézier control point.</p>
626 </td></tr>
627 <tr><td class="val" id="to">to</td><td class="desc">
628 <p>A pointer to the destination point.</p>
629 </td></tr>
630 </table>
631
632 <h4>return</h4>
633 <p>FreeType error code. 0&nbsp;means success.</p>
634
635 <h4>note</h4>
636 <p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
637
638 <hr>
639 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
640
641 <div class="section">
642 <h3 id="FT_Stroker_CubicTo">FT_Stroker_CubicTo</h3>
643 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
644 <pre>
645   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
646   <b>FT_Stroker_CubicTo</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker,
647                       <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  control1,
648                       <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  control2,
649                       <a href="ft2-basic_types.html#FT_Vector">FT_Vector</a>*  to );
650 </pre>
651
652 <p>&lsquo;Draw&rsquo; a single cubic Bézier in the stroker's current sub-path, from the last position.</p>
653
654 <h4>input</h4>
655 <table class="fields">
656 <tr><td class="val" id="stroker">stroker</td><td class="desc">
657 <p>The target stroker handle.</p>
658 </td></tr>
659 <tr><td class="val" id="control1">control1</td><td class="desc">
660 <p>A pointer to the first Bézier control point.</p>
661 </td></tr>
662 <tr><td class="val" id="control2">control2</td><td class="desc">
663 <p>A pointer to second Bézier control point.</p>
664 </td></tr>
665 <tr><td class="val" id="to">to</td><td class="desc">
666 <p>A pointer to the destination point.</p>
667 </td></tr>
668 </table>
669
670 <h4>return</h4>
671 <p>FreeType error code. 0&nbsp;means success.</p>
672
673 <h4>note</h4>
674 <p>You should call this function between <a href="ft2-glyph_stroker.html#FT_Stroker_BeginSubPath">FT_Stroker_BeginSubPath</a> and <a href="ft2-glyph_stroker.html#FT_Stroker_EndSubPath">FT_Stroker_EndSubPath</a>.</p>
675
676 <hr>
677 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
678
679 <div class="section">
680 <h3 id="FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</h3>
681 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
682 <pre>
683   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
684   <b>FT_Stroker_GetBorderCounts</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>        stroker,
685                               <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a>  border,
686                               <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a>          *anum_points,
687                               <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a>          *anum_contours );
688 </pre>
689
690 <p>Call this function once you have finished parsing your paths with the stroker. It returns the number of points and contours necessary to export one of the &lsquo;border&rsquo; or &lsquo;stroke&rsquo; outlines generated by the stroker.</p>
691
692 <h4>input</h4>
693 <table class="fields">
694 <tr><td class="val" id="stroker">stroker</td><td class="desc">
695 <p>The target stroker handle.</p>
696 </td></tr>
697 <tr><td class="val" id="border">border</td><td class="desc">
698 <p>The border index.</p>
699 </td></tr>
700 </table>
701
702 <h4>output</h4>
703 <table class="fields">
704 <tr><td class="val" id="anum_points">anum_points</td><td class="desc">
705 <p>The number of points.</p>
706 </td></tr>
707 <tr><td class="val" id="anum_contours">anum_contours</td><td class="desc">
708 <p>The number of contours.</p>
709 </td></tr>
710 </table>
711
712 <h4>return</h4>
713 <p>FreeType error code. 0&nbsp;means success.</p>
714
715 <h4>note</h4>
716 <p>When an outline, or a sub-path, is &lsquo;closed&rsquo;, the stroker generates two independent &lsquo;border&rsquo; outlines, named &lsquo;left&rsquo; and &lsquo;right&rsquo;.</p>
717 <p>When the outline, or a sub-path, is &lsquo;opened&rsquo;, the stroker merges the &lsquo;border&rsquo; outlines with caps. The &lsquo;left&rsquo; border receives all points, while the &lsquo;right&rsquo; border becomes empty.</p>
718 <p>Use the function <a href="ft2-glyph_stroker.html#FT_Stroker_GetCounts">FT_Stroker_GetCounts</a> instead if you want to retrieve the counts associated to both borders.</p>
719
720 <hr>
721 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
722
723 <div class="section">
724 <h3 id="FT_Stroker_ExportBorder">FT_Stroker_ExportBorder</h3>
725 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
726 <pre>
727   FT_EXPORT( <span class="keyword">void</span> )
728   <b>FT_Stroker_ExportBorder</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>        stroker,
729                            <a href="ft2-glyph_stroker.html#FT_StrokerBorder">FT_StrokerBorder</a>  border,
730                            <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>*       outline );
731 </pre>
732
733 <p>Call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to export the corresponding border to your own <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> structure.</p>
734 <p>Note that this function appends the border points and contours to your outline, but does not try to resize its arrays.</p>
735
736 <h4>input</h4>
737 <table class="fields">
738 <tr><td class="val" id="stroker">stroker</td><td class="desc">
739 <p>The target stroker handle.</p>
740 </td></tr>
741 <tr><td class="val" id="border">border</td><td class="desc">
742 <p>The border index.</p>
743 </td></tr>
744 <tr><td class="val" id="outline">outline</td><td class="desc">
745 <p>The target outline handle.</p>
746 </td></tr>
747 </table>
748
749 <h4>note</h4>
750 <p>Always call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to get sure that there is enough room in your <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> object to receive all new data.</p>
751 <p>When an outline, or a sub-path, is &lsquo;closed&rsquo;, the stroker generates two independent &lsquo;border&rsquo; outlines, named &lsquo;left&rsquo; and &lsquo;right&rsquo;.</p>
752 <p>When the outline, or a sub-path, is &lsquo;opened&rsquo;, the stroker merges the &lsquo;border&rsquo; outlines with caps. The &lsquo;left&rsquo; border receives all points, while the &lsquo;right&rsquo; border becomes empty.</p>
753 <p>Use the function <a href="ft2-glyph_stroker.html#FT_Stroker_Export">FT_Stroker_Export</a> instead if you want to retrieve all borders at once.</p>
754
755 <hr>
756 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
757
758 <div class="section">
759 <h3 id="FT_Stroker_GetCounts">FT_Stroker_GetCounts</h3>
760 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
761 <pre>
762   FT_EXPORT( <a href="ft2-basic_types.html#FT_Error">FT_Error</a> )
763   <b>FT_Stroker_GetCounts</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>  stroker,
764                         <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a>    *anum_points,
765                         <a href="ft2-basic_types.html#FT_UInt">FT_UInt</a>    *anum_contours );
766 </pre>
767
768 <p>Call this function once you have finished parsing your paths with the stroker. It returns the number of points and contours necessary to export all points/borders from the stroked outline/path.</p>
769
770 <h4>input</h4>
771 <table class="fields">
772 <tr><td class="val" id="stroker">stroker</td><td class="desc">
773 <p>The target stroker handle.</p>
774 </td></tr>
775 </table>
776
777 <h4>output</h4>
778 <table class="fields">
779 <tr><td class="val" id="anum_points">anum_points</td><td class="desc">
780 <p>The number of points.</p>
781 </td></tr>
782 <tr><td class="val" id="anum_contours">anum_contours</td><td class="desc">
783 <p>The number of contours.</p>
784 </td></tr>
785 </table>
786
787 <h4>return</h4>
788 <p>FreeType error code. 0&nbsp;means success.</p>
789
790 <hr>
791 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
792
793 <div class="section">
794 <h3 id="FT_Stroker_Export">FT_Stroker_Export</h3>
795 <p>Defined in FT_STROKER_H (freetype/ftstroke.h).</p>
796 <pre>
797   FT_EXPORT( <span class="keyword">void</span> )
798   <b>FT_Stroker_Export</b>( <a href="ft2-glyph_stroker.html#FT_Stroker">FT_Stroker</a>   stroker,
799                      <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a>*  outline );
800 </pre>
801
802 <p>Call this function after <a href="ft2-glyph_stroker.html#FT_Stroker_GetBorderCounts">FT_Stroker_GetBorderCounts</a> to export all borders to your own <a href="ft2-outline_processing.html#FT_Outline">FT_Outline</a> structure.</p>
803 <p>Note that this function appends the border points and contours to your outline, but does not try to resize its arrays.</p>
804
805 <h4>input</h4>
806 <table class="fields">
807 <tr><td class="val" id="stroker">stroker</td><td class="desc">
808 <p>The target stroker handle.</p>
809 </td></tr>
810 <tr><td class="val" id="outline">outline</td><td class="desc">
811 <p>The target outline handle.</p>
812 </td></tr>
813 </table>
814
815 <hr>
816 <table class="index-toc-link"><tr><td class="left">[<a href="ft2-index.html">Index</a>]</td><td class="middle">[<a href="#">Top</a>]</td><td class="right">[<a href="ft2-toc.html">TOC</a>]</td></tr></table></div>
817
818 </body>
819 </html>