4
4
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
5
5
<title>FreeType Fonts and Rendering</title>
6
<meta name="generator" content="DocBook XSL Stylesheets V1.74.0">
6
<meta name="generator" content="DocBook XSL Stylesheets V1.74.2">
7
7
<link rel="home" href="index.html" title="Pango Reference Manual">
8
8
<link rel="up" href="rendering.html" title="Rendering with Pango">
9
9
<link rel="prev" href="pango-Win32-Fonts-and-Rendering.html" title="Win32 Fonts and Rendering">
10
10
<link rel="next" href="pango-Xft-Fonts-and-Rendering.html" title="Xft Fonts and Rendering">
11
<meta name="generator" content="GTK-Doc V1.10 (XML mode)">
11
<meta name="generator" content="GTK-Doc V1.11 (XML mode)">
12
12
<link rel="stylesheet" href="style.css" type="text/css">
13
13
<link rel="chapter" href="pango.html" title="Basic Pango Interfaces">
14
14
<link rel="chapter" href="rendering.html" title="Rendering with Pango">
38
38
<th width="100%" align="center">Pango Reference Manual</th>
39
39
<td><a accesskey="n" href="pango-Xft-Fonts-and-Rendering.html"><img src="right.png" width="24" height="24" border="0" alt="Next"></a></td>
41
<tr><td colspan="5" class="shortcuts"><nobr><a href="#pango-FreeType-Fonts-and-Rendering.synopsis" class="shortcut">Top</a>
43
<a href="#pango-FreeType-Fonts-and-Rendering.description" class="shortcut">Description</a>
45
<a href="#pango-FreeType-Fonts-and-Rendering.object-hierarchy" class="shortcut">Object Hierarchy</a></nobr></td></tr>
41
<tr><td colspan="5" class="shortcuts">
42
<a href="#pango-FreeType-Fonts-and-Rendering.synopsis" class="shortcut">Top</a>
44
<a href="#pango-FreeType-Fonts-and-Rendering.description" class="shortcut">Description</a>
46
<a href="#pango-FreeType-Fonts-and-Rendering.object-hierarchy" class="shortcut">Object Hierarchy</a>
47
49
<div class="refentry" lang="en">
48
50
<a name="pango-FreeType-Fonts-and-Rendering"></a><div class="titlepage"></div>
57
59
<a name="pango-FreeType-Fonts-and-Rendering.synopsis"></a><h2>Synopsis</h2>
58
60
<a name="PangoFT2FontMap"></a><pre class="synopsis">
59
61
<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap-struct" title="PangoFT2FontMap">PangoFT2FontMap</a>;
60
#define <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PANGO-RENDER-TYPE-FT2:CAPS" title="PANGO_RENDER_TYPE_FT2">PANGO_RENDER_TYPE_FT2</a>
61
<a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a>* <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-new" title="pango_ft2_font_map_new ()">pango_ft2_font_map_new</a> (void);
62
#define <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PANGO-RENDER-TYPE-FT2--CAPS" title="PANGO_RENDER_TYPE_FT2">PANGO_RENDER_TYPE_FT2</a>
63
<a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a> * <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-new" title="pango_ft2_font_map_new ()">pango_ft2_font_map_new</a> (void);
62
64
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-set-resolution" title="pango_ft2_font_map_set_resolution ()">pango_ft2_font_map_set_resolution</a> (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap,
65
<a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a>* <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-create-context" title="pango_ft2_font_map_create_context ()">pango_ft2_font_map_create_context</a> (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap);
67
<a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a> * <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-create-context" title="pango_ft2_font_map_create_context ()">pango_ft2_font_map_create_context</a> (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap);
66
68
void (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2SubstituteFunc" title="PangoFT2SubstituteFunc ()">*PangoFT2SubstituteFunc</a>) (FcPattern *pattern,
68
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
70
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
69
71
>gpointer</a> data);
70
72
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-set-default-substitute" title="pango_ft2_font_map_set_default_substitute ()">pango_ft2_font_map_set_default_substitute</a>
71
73
(<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap,
72
74
<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2SubstituteFunc" title="PangoFT2SubstituteFunc ()">PangoFT2SubstituteFunc</a> func,
74
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
76
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
75
77
>gpointer</a> data,
77
href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"
79
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"
78
80
>GDestroyNotify</a> notify);
79
81
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-substitute-changed" title="pango_ft2_font_map_substitute_changed ()">pango_ft2_font_map_substitute_changed</a>
80
82
(<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap);
81
<a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a>* <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-get-context" title="pango_ft2_get_context ()">pango_ft2_get_context</a> (double dpi_x,
83
<a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a> * <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-get-context" title="pango_ft2_get_context ()">pango_ft2_get_context</a> (double dpi_x,
83
85
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-render" title="pango_ft2_render ()">pango_ft2_render</a> (FT_Bitmap *bitmap,
84
86
<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
85
87
<a class="link" href="pango-Glyph-Storage.html#PangoGlyphString" title="PangoGlyphString">PangoGlyphString</a> *glyphs,
87
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
89
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
90
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
92
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
92
94
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-render-transformed" title="pango_ft2_render_transformed ()">pango_ft2_render_transformed</a> (FT_Bitmap *bitmap,
93
95
const <a class="link" href="pango-Glyph-Storage.html#PangoMatrix" title="PangoMatrix">PangoMatrix</a> *matrix,
117
119
<a class="link" href="pango-Glyph-Storage.html#PangoGlyph" title="PangoGlyph">PangoGlyph</a> left,
118
120
<a class="link" href="pango-Glyph-Storage.html#PangoGlyph" title="PangoGlyph">PangoGlyph</a> right);
119
121
FT_Face <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-get-face" title="pango_ft2_font_get_face ()">pango_ft2_font_get_face</a> (<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font);
120
<a class="link" href="pango-Coverage-Maps.html#PangoCoverage" title="PangoCoverage">PangoCoverage</a>* <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-get-coverage" title="pango_ft2_font_get_coverage ()">pango_ft2_font_get_coverage</a> (<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
122
<a class="link" href="pango-Coverage-Maps.html#PangoCoverage" title="PangoCoverage">PangoCoverage</a> * <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-get-coverage" title="pango_ft2_font_get_coverage ()">pango_ft2_font_get_coverage</a> (<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
121
123
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);
122
<a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a>* <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-for-display" title="pango_ft2_font_map_for_display ()">pango_ft2_font_map_for_display</a> (void);
124
<a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a> * <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-font-map-for-display" title="pango_ft2_font_map_for_display ()">pango_ft2_font_map_for_display</a> (void);
123
125
void <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#pango-ft2-shutdown-display" title="pango_ft2_shutdown_display ()">pango_ft2_shutdown_display</a> (void);
163
165
A string constant that was used to identify shape engines that work
164
with the FreeType backend. See <a class="link" href="PangoFcFont.html#PANGO-RENDER-TYPE-FC:CAPS" title="PANGO_RENDER_TYPE_FC"><code class="literal">PANGO_RENDER_TYPE_FC</code></a> for the replacement.
166
with the FreeType backend. See <a class="link" href="PangoFcFont.html#PANGO-RENDER-TYPE-FC--CAPS" title="PANGO_RENDER_TYPE_FC"><code class="literal">PANGO_RENDER_TYPE_FC</code></a> for the replacement.
168
170
<div class="refsect2" lang="en">
169
171
<a name="pango-ft2-font-map-new"></a><h3>pango_ft2_font_map_new ()</h3>
170
<pre class="programlisting"><a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a>* pango_ft2_font_map_new (void);</pre>
172
<pre class="programlisting"><a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a> * pango_ft2_font_map_new (void);</pre>
172
174
Create a new <a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap"><span class="type">PangoFT2FontMap</span></a> object; a fontmap is used
173
175
to cache information about available fonts, and holds
183
184
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
184
185
<td> the newly created fontmap object. Unref
186
href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"
187
href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"
187
188
><code class="function">g_object_unref()</code></a> when you are finished with it.
192
<p class="since">Since 1.2
193
<p class="since">Since 1.2</p>
196
196
<div class="refsect2" lang="en">
226
<p class="since">Since 1.2
225
<p class="since">Since 1.2</p>
230
228
<div class="refsect2" lang="en">
231
229
<a name="pango-ft2-font-map-create-context"></a><h3>pango_ft2_font_map_create_context ()</h3>
232
<pre class="programlisting"><a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a>* pango_ft2_font_map_create_context (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap);</pre>
230
<pre class="programlisting"><a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a> * pango_ft2_font_map_create_context (<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap);</pre>
233
231
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
234
232
<h3 class="title">Warning</h3>
235
233
<p><code class="literal">pango_ft2_font_map_create_context</code> has been deprecated since version 1.22 and should not be used in newly-written code. Use <a class="link" href="pango-Fonts.html#pango-font-map-create-context" title="pango_font_map_create_context ()"><code class="function">pango_font_map_create_context()</code></a> instead.</p>
251
248
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
252
249
<td> the newly created context; free with <a
253
href="/usr/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"
250
href="/home/behdad/.local/share/gtk-doc/html/gobject/gobject-The-Base-Object-Type.html#g-object-unref"
254
251
><code class="function">g_object_unref()</code></a>.
260
<p class="since">Since 1.2
257
<p class="since">Since 1.2</p>
265
260
<div class="refsect2" lang="en">
266
261
<a name="PangoFT2SubstituteFunc"></a><h3>PangoFT2SubstituteFunc ()</h3>
267
262
<pre class="programlisting">void (*PangoFT2SubstituteFunc) (FcPattern *pattern,
269
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
264
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
270
265
>gpointer</a> data);</pre>
272
267
Function type for doing final config tweaking on prepared FcPatterns.
296
289
(<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2FontMap">PangoFT2FontMap</a> *fontmap,
297
290
<a class="link" href="pango-FreeType-Fonts-and-Rendering.html#PangoFT2SubstituteFunc" title="PangoFT2SubstituteFunc ()">PangoFT2SubstituteFunc</a> func,
299
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
292
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gpointer"
300
293
>gpointer</a> data,
302
href="/usr/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"
295
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Datasets.html#GDestroyNotify"
303
296
>GDestroyNotify</a> notify);</pre>
305
298
Sets a function that will be called to do final configuration
363
<p class="since">Since 1.2
353
<p class="since">Since 1.2</p>
367
356
<div class="refsect2" lang="en">
368
357
<a name="pango-ft2-get-context"></a><h3>pango_ft2_get_context ()</h3>
369
<pre class="programlisting"><a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a>* pango_ft2_get_context (double dpi_x,
358
<pre class="programlisting"><a class="link" href="pango-Text-Processing.html#PangoContext">PangoContext</a> * pango_ft2_get_context (double dpi_x,
370
359
double dpi_y);</pre>
371
360
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
372
361
<h3 class="title">Warning</h3>
408
396
<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
409
397
<a class="link" href="pango-Glyph-Storage.html#PangoGlyphString" title="PangoGlyphString">PangoGlyphString</a> *glyphs,
411
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
399
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
414
href="/usr/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
402
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Basic-Types.html#gint"
415
403
>gint</a> y);</pre>
417
405
Renders a <a class="link" href="pango-Glyph-Storage.html#PangoGlyphString" title="PangoGlyphString"><span class="type">PangoGlyphString</span></a> onto a FreeType2 bitmap.</p>
421
408
<div class="variablelist"><table border="0">
422
409
<col align="left" valign="top">
480
466
<td><p><span class="term"><em class="parameter"><code>matrix</code></em> :</span></p></td>
481
<td> a <a class="link" href="pango-Glyph-Storage.html#PangoMatrix" title="PangoMatrix"><span class="type">PangoMatrix</span></a>, or <code class="literal">NULL</code> to use an identity transformation
467
<td> a <a class="link" href="pango-Glyph-Storage.html#PangoMatrix" title="PangoMatrix"><span class="type">PangoMatrix</span></a>, or <a
468
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL--CAPS"
469
><code class="literal">NULL</code></a> to use an identity transformation
685
666
Return the index of a glyph suitable for drawing unknown characters with
686
<em class="parameter"><code>font</code></em>, or <a class="link" href="pango-Glyph-Storage.html#PANGO-GLYPH-EMPTY:CAPS" title="PANGO_GLYPH_EMPTY"><code class="literal">PANGO_GLYPH_EMPTY</code></a> if no suitable glyph found.
667
<em class="parameter"><code>font</code></em>, or <a class="link" href="pango-Glyph-Storage.html#PANGO-GLYPH-EMPTY--CAPS" title="PANGO_GLYPH_EMPTY"><code class="literal">PANGO_GLYPH_EMPTY</code></a> if no suitable glyph found.
689
670
If you want to draw an unknown-box for a character that is not covered
691
use <a class="link" href="pango-Glyph-Storage.html#PANGO-GET-UNKNOWN-GLYPH:CAPS" title="PANGO_GET_UNKNOWN_GLYPH()"><code class="function">PANGO_GET_UNKNOWN_GLYPH()</code></a> instead.</p>
672
use <a class="link" href="pango-Glyph-Storage.html#PANGO-GET-UNKNOWN-GLYPH--CAPS" title="PANGO_GET_UNKNOWN_GLYPH()"><code class="function">PANGO_GET_UNKNOWN_GLYPH()</code></a> instead.</p>
695
675
<div class="variablelist"><table border="0">
696
676
<col align="left" valign="top">
784
762
<td><p><span class="term"><span class="emphasis"><em>Returns</em></span> :</span></p></td>
785
763
<td> a pointer to a <span class="type">FT_Face</span> structure, with the size set correctly,
786
or <code class="literal">NULL</code> if <em class="parameter"><code>font</code></em> is <code class="literal">NULL</code>.
765
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL--CAPS"
766
><code class="literal">NULL</code></a> if <em class="parameter"><code>font</code></em> is <a
767
href="/home/behdad/.local/share/gtk-doc/html/glib/glib-Standard-Macros.html#NULL--CAPS"
768
><code class="literal">NULL</code></a>.
793
775
<div class="refsect2" lang="en">
794
776
<a name="pango-ft2-font-get-coverage"></a><h3>pango_ft2_font_get_coverage ()</h3>
795
<pre class="programlisting"><a class="link" href="pango-Coverage-Maps.html#PangoCoverage" title="PangoCoverage">PangoCoverage</a>* pango_ft2_font_get_coverage (<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
777
<pre class="programlisting"><a class="link" href="pango-Coverage-Maps.html#PangoCoverage" title="PangoCoverage">PangoCoverage</a> * pango_ft2_font_get_coverage (<a class="link" href="pango-Fonts.html#PangoFont">PangoFont</a> *font,
796
778
<a class="link" href="pango-Scripts-and-Languages.html#PangoLanguage" title="PangoLanguage">PangoLanguage</a> *language);</pre>
797
779
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
798
780
<h3 class="title">Warning</h3>
829
810
<div class="refsect2" lang="en">
830
811
<a name="pango-ft2-font-map-for-display"></a><h3>pango_ft2_font_map_for_display ()</h3>
831
<pre class="programlisting"><a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a>* pango_ft2_font_map_for_display (void);</pre>
812
<pre class="programlisting"><a class="link" href="pango-Fonts.html#PangoFontMap">PangoFontMap</a> * pango_ft2_font_map_for_display (void);</pre>
832
813
<div class="warning" style="margin-left: 0.5in; margin-right: 0.5in;">
833
814
<h3 class="title">Warning</h3>
834
815
<p><code class="literal">pango_ft2_font_map_for_display</code> is deprecated and should not be used in newly-written code.</p>