Blob Blame History Raw
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>GtkSourcePrintCompositor: GtkSourceView 3 Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets Vsnapshot">
<link rel="home" href="index.html" title="GtkSourceView 3 Reference Manual">
<link rel="up" href="ch07.html" title="Printing">
<link rel="prev" href="ch07.html" title="Printing">
<link rel="next" href="ch08.html" title="Search and Replace">
<meta name="generator" content="GTK-Doc V1.28.1 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts">
<a href="#" class="shortcut">Top</a><span id="nav_description">  <span class="dim">|</span> 
                  <a href="#GtkSourcePrintCompositor.description" class="shortcut">Description</a></span><span id="nav_hierarchy">  <span class="dim">|</span> 
                  <a href="#GtkSourcePrintCompositor.object-hierarchy" class="shortcut">Object Hierarchy</a></span><span id="nav_properties">  <span class="dim">|</span> 
                  <a href="#GtkSourcePrintCompositor.properties" class="shortcut">Properties</a></span>
</td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="ch07.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="ch07.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="ch08.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="GtkSourcePrintCompositor"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle"><a name="GtkSourcePrintCompositor.top_of_page"></a>GtkSourcePrintCompositor</span></h2>
<p>GtkSourcePrintCompositor — Compose a GtkSourceBuffer for printing</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.functions"></a><h2>Functions</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="functions_return">
<col class="functions_name">
</colgroup>
<tbody>
<tr>
<td class="function_type">
<a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="returnvalue">GtkSourcePrintCompositor</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-new" title="gtk_source_print_compositor_new ()">gtk_source_print_compositor_new</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="returnvalue">GtkSourcePrintCompositor</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-new-from-view" title="gtk_source_print_compositor_new_from_view ()">gtk_source_print_compositor_new_from_view</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="returnvalue">GtkSourceBuffer</span></a> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-buffer" title="gtk_source_print_compositor_get_buffer ()">gtk_source_print_compositor_get_buffer</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-tab-width" title="gtk_source_print_compositor_set_tab_width ()">gtk_source_print_compositor_set_tab_width</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-tab-width" title="gtk_source_print_compositor_get_tab_width ()">gtk_source_print_compositor_get_tab_width</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-wrap-mode" title="gtk_source_print_compositor_set_wrap_mode ()">gtk_source_print_compositor_set_wrap_mode</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">GtkWrapMode</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-wrap-mode" title="gtk_source_print_compositor_get_wrap_mode ()">gtk_source_print_compositor_get_wrap_mode</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-highlight-syntax" title="gtk_source_print_compositor_set_highlight_syntax ()">gtk_source_print_compositor_set_highlight_syntax</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-highlight-syntax" title="gtk_source_print_compositor_get_highlight_syntax ()">gtk_source_print_compositor_get_highlight_syntax</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-print-line-numbers" title="gtk_source_print_compositor_set_print_line_numbers ()">gtk_source_print_compositor_set_print_line_numbers</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">guint</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-print-line-numbers" title="gtk_source_print_compositor_get_print_line_numbers ()">gtk_source_print_compositor_get_print_line_numbers</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-body-font-name" title="gtk_source_print_compositor_set_body_font_name ()">gtk_source_print_compositor_set_body_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-body-font-name" title="gtk_source_print_compositor_get_body_font_name ()">gtk_source_print_compositor_get_body_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-line-numbers-font-name" title="gtk_source_print_compositor_set_line_numbers_font_name ()">gtk_source_print_compositor_set_line_numbers_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-line-numbers-font-name" title="gtk_source_print_compositor_get_line_numbers_font_name ()">gtk_source_print_compositor_get_line_numbers_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-header-font-name" title="gtk_source_print_compositor_set_header_font_name ()">gtk_source_print_compositor_set_header_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-header-font-name" title="gtk_source_print_compositor_get_header_font_name ()">gtk_source_print_compositor_get_header_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-footer-font-name" title="gtk_source_print_compositor_set_footer_font_name ()">gtk_source_print_compositor_set_footer_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gchar</span> *
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-footer-font-name" title="gtk_source_print_compositor_get_footer_font_name ()">gtk_source_print_compositor_get_footer_font_name</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-top-margin" title="gtk_source_print_compositor_get_top_margin ()">gtk_source_print_compositor_get_top_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-top-margin" title="gtk_source_print_compositor_set_top_margin ()">gtk_source_print_compositor_set_top_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-bottom-margin" title="gtk_source_print_compositor_get_bottom_margin ()">gtk_source_print_compositor_get_bottom_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-bottom-margin" title="gtk_source_print_compositor_set_bottom_margin ()">gtk_source_print_compositor_set_bottom_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-left-margin" title="gtk_source_print_compositor_get_left_margin ()">gtk_source_print_compositor_get_left_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-left-margin" title="gtk_source_print_compositor_set_left_margin ()">gtk_source_print_compositor_set_left_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-right-margin" title="gtk_source_print_compositor_get_right_margin ()">gtk_source_print_compositor_get_right_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-right-margin" title="gtk_source_print_compositor_set_right_margin ()">gtk_source_print_compositor_set_right_margin</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-print-header" title="gtk_source_print_compositor_set_print_header ()">gtk_source_print_compositor_set_print_header</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-print-header" title="gtk_source_print_compositor_get_print_header ()">gtk_source_print_compositor_get_print_header</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-print-footer" title="gtk_source_print_compositor_set_print_footer ()">gtk_source_print_compositor_set_print_footer</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-print-footer" title="gtk_source_print_compositor_get_print_footer ()">gtk_source_print_compositor_get_print_footer</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-header-format" title="gtk_source_print_compositor_set_header_format ()">gtk_source_print_compositor_set_header_format</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-footer-format" title="gtk_source_print_compositor_set_footer_format ()">gtk_source_print_compositor_set_footer_format</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gint</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-n-pages" title="gtk_source_print_compositor_get_n_pages ()">gtk_source_print_compositor_get_n_pages</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gboolean</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()">gtk_source_print_compositor_paginate</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">gdouble</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-pagination-progress" title="gtk_source_print_compositor_get_pagination_progress ()">gtk_source_print_compositor_get_pagination_progress</a> <span class="c_punctuation">()</span>
</td>
</tr>
<tr>
<td class="function_type">
<span class="returnvalue">void</span>
</td>
<td class="function_name">
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-draw-page" title="gtk_source_print_compositor_draw_page ()">gtk_source_print_compositor_draw_page</a> <span class="c_punctuation">()</span>
</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.properties"></a><h2>Properties</h2>
<div class="informaltable"><table class="informaltable" border="0">
<colgroup>
<col width="150px" class="properties_type">
<col width="300px" class="properties_name">
<col width="200px" class="properties_flags">
</colgroup>
<tbody>
<tr>
<td class="property_type">
<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--body-font-name" title="The “body-font-name” property">body-font-name</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> *</td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--buffer" title="The “buffer” property">buffer</a></td>
<td class="property_flags">Read / Write / Construct Only</td>
</tr>
<tr>
<td class="property_type">
<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--footer-font-name" title="The “footer-font-name” property">footer-font-name</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--header-font-name" title="The “header-font-name” property">header-font-name</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gboolean</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--highlight-syntax" title="The “highlight-syntax” property">highlight-syntax</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type">
<span class="type">gchar</span> *</td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--line-numbers-font-name" title="The “line-numbers-font-name” property">line-numbers-font-name</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gint</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--n-pages" title="The “n-pages” property">n-pages</a></td>
<td class="property_flags">Read</td>
</tr>
<tr>
<td class="property_type"><span class="type">gboolean</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--print-footer" title="The “print-footer” property">print-footer</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">gboolean</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--print-header" title="The “print-header” property">print-header</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">guint</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--print-line-numbers" title="The “print-line-numbers” property">print-line-numbers</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">guint</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--tab-width" title="The “tab-width” property">tab-width</a></td>
<td class="property_flags">Read / Write</td>
</tr>
<tr>
<td class="property_type"><span class="type">GtkWrapMode</span></td>
<td class="property_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--wrap-mode" title="The “wrap-mode” property">wrap-mode</a></td>
<td class="property_flags">Read / Write</td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.other"></a><h2>Types and Values</h2>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="name">
<col class="description">
</colgroup>
<tbody><tr>
<td class="datatype_keyword"> </td>
<td class="function_name"><a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor-struct" title="GtkSourcePrintCompositor">GtkSourcePrintCompositor</a></td>
</tr></tbody>
</table></div>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.object-hierarchy"></a><h2>Object Hierarchy</h2>
<pre class="screen">    GObject
    <span class="lineart">╰──</span> GtkSourcePrintCompositor
</pre>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.includes"></a><h2>Includes</h2>
<pre class="synopsis">#include &lt;gtksourceview/gtksource.h&gt;
</pre>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.description"></a><h2>Description</h2>
<p>The <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> object is used to compose a <a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a>
for printing. You can set various configuration options to customize the
printed output. <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> is designed to be used with the
high-level printing API of gtk+, i.e. <span class="type">GtkPrintOperation</span>.</p>
<p>The margins specified in this object are the layout margins: they define the
blank space bordering the printed area of the pages. They must not be
confused with the "print margins", i.e. the parts of the page that the
printer cannot print on, defined in the <span class="type">GtkPageSetup</span> objects. If the
specified layout margins are smaller than the "print margins", the latter
ones are used as a fallback by the <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> object, so that
the printed area is not clipped.</p>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.functions_details"></a><h2>Functions</h2>
<div class="refsect2">
<a name="gtk-source-print-compositor-new"></a><h3>gtk_source_print_compositor_new ()</h3>
<pre class="programlisting"><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="returnvalue">GtkSourcePrintCompositor</span></a> *
gtk_source_print_compositor_new (<em class="parameter"><code><a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> *buffer</code></em>);</pre>
<p>Creates a new print compositor that can be used to print <em class="parameter"><code>buffer</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-new.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>buffer</p></td>
<td class="parameter_description"><p>the <a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> to print.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-new.returns"></a><h4>Returns</h4>
<p> a new print compositor object.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-new-from-view"></a><h3>gtk_source_print_compositor_new_from_view ()</h3>
<pre class="programlisting"><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="returnvalue">GtkSourcePrintCompositor</span></a> *
gtk_source_print_compositor_new_from_view
                               (<em class="parameter"><code><a class="link" href="GtkSourceView.html" title="GtkSourceView"><span class="type">GtkSourceView</span></a> *view</code></em>);</pre>
<p>Creates a new print compositor that can be used to print the buffer
associated with <em class="parameter"><code>view</code></em>
.
This constructor sets some configuration properties to make the
printed output match <em class="parameter"><code>view</code></em>
 as much as possible.  The properties set are
<a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--tab-width" title="The “tab-width” property"><span class="type">“tab-width”</span></a>, <a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--highlight-syntax" title="The “highlight-syntax” property"><span class="type">“highlight-syntax”</span></a>,
<a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--wrap-mode" title="The “wrap-mode” property"><span class="type">“wrap-mode”</span></a>, <a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--body-font-name" title="The “body-font-name” property"><span class="type">“body-font-name”</span></a> and
<a class="link" href="GtkSourcePrintCompositor.html#GtkSourcePrintCompositor--print-line-numbers" title="The “print-line-numbers” property"><span class="type">“print-line-numbers”</span></a>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-new-from-view.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>view</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourceView.html" title="GtkSourceView"><span class="type">GtkSourceView</span></a> to get configuration from.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-new-from-view.returns"></a><h4>Returns</h4>
<p> a new print compositor object.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-buffer"></a><h3>gtk_source_print_compositor_get_buffer ()</h3>
<pre class="programlisting"><a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="returnvalue">GtkSourceBuffer</span></a> *
gtk_source_print_compositor_get_buffer
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Gets the <a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> associated with the compositor. The returned
object reference is owned by the compositor object and
should not be unreferenced.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-buffer.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-buffer.returns"></a><h4>Returns</h4>
<p>the <a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> associated with the compositor. </p>
<p><span class="annotation">[<acronym title="Don't free data after the code is done."><span class="acronym">transfer none</span></acronym>]</span></p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-tab-width"></a><h3>gtk_source_print_compositor_set_tab_width ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_tab_width
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">guint</span> width</code></em>);</pre>
<p>Sets the width of tabulation in characters for printed text.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-tab-width.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>width</p></td>
<td class="parameter_description"><p>width of tab in characters.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-tab-width"></a><h3>gtk_source_print_compositor_get_tab_width ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
gtk_source_print_compositor_get_tab_width
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the width of tabulation in characters for printed text.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-tab-width.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-tab-width.returns"></a><h4>Returns</h4>
<p> width of tab.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-wrap-mode"></a><h3>gtk_source_print_compositor_set_wrap_mode ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_wrap_mode
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">GtkWrapMode</span> wrap_mode</code></em>);</pre>
<p>Sets the line wrapping mode for the printed text.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-wrap-mode.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>wrap_mode</p></td>
<td class="parameter_description"><p>a <span class="type">GtkWrapMode</span>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-wrap-mode"></a><h3>gtk_source_print_compositor_get_wrap_mode ()</h3>
<pre class="programlisting"><span class="returnvalue">GtkWrapMode</span>
gtk_source_print_compositor_get_wrap_mode
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Gets the line wrapping mode for the printed text.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-wrap-mode.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-wrap-mode.returns"></a><h4>Returns</h4>
<p> the line wrap mode.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-highlight-syntax"></a><h3>gtk_source_print_compositor_set_highlight_syntax ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_highlight_syntax
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> highlight</code></em>);</pre>
<p>Sets whether the printed text will be highlighted according to the
buffer rules.  Both color and font style are applied.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-highlight-syntax.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>highlight</p></td>
<td class="parameter_description"><p>whether syntax should be highlighted.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-highlight-syntax"></a><h3>gtk_source_print_compositor_get_highlight_syntax ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_source_print_compositor_get_highlight_syntax
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Determines whether the printed text will be highlighted according to the
buffer rules.  Note that highlighting will happen
only if the buffer to print has highlighting activated.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-highlight-syntax.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-highlight-syntax.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the printed output will be highlighted.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-print-line-numbers"></a><h3>gtk_source_print_compositor_set_print_line_numbers ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_print_line_numbers
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">guint</span> interval</code></em>);</pre>
<p>Sets the interval for printed line numbers.  If <em class="parameter"><code>interval</code></em>
 is 0 no
numbers will be printed.  If greater than 0, a number will be
printed every <em class="parameter"><code>interval</code></em>
 lines (i.e. 1 will print all line numbers).</p>
<p>Maximum accepted value for <em class="parameter"><code>interval</code></em>
 is 100.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-print-line-numbers.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>interval</p></td>
<td class="parameter_description"><p>interval for printed line numbers.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-print-line-numbers"></a><h3>gtk_source_print_compositor_get_print_line_numbers ()</h3>
<pre class="programlisting"><span class="returnvalue">guint</span>
gtk_source_print_compositor_get_print_line_numbers
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the interval used for line number printing.  If the
value is 0, no line numbers will be printed.  The default value is
1 (i.e. numbers printed in all lines).</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-line-numbers.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-line-numbers.returns"></a><h4>Returns</h4>
<p> the interval of printed line numbers.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-body-font-name"></a><h3>gtk_source_print_compositor_set_body_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_body_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *font_name</code></em>);</pre>
<p>Sets the default font for the printed text.</p>
<p><em class="parameter"><code>font_name</code></em>
 should be a
string representation of a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-body-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_name</p></td>
<td class="parameter_description"><p>the name of the default font for the body text.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-body-font-name"></a><h3>gtk_source_print_compositor_get_body_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gtk_source_print_compositor_get_body_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the name of the font used to print the text body. The returned string
must be freed with <code class="function">g_free()</code>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-body-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-body-font-name.returns"></a><h4>Returns</h4>
<p> a new string containing the name of the font used to print the
text body.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-line-numbers-font-name"></a><h3>gtk_source_print_compositor_set_line_numbers_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_line_numbers_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *font_name</code></em>);</pre>
<p>Sets the font for printing line numbers on the left margin.  If
<code class="literal">NULL</code> is supplied, the default font (i.e. the one being used for the
text) will be used instead.</p>
<p><em class="parameter"><code>font_name</code></em>
 should be a
string representation of a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-line-numbers-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_name</p></td>
<td class="parameter_description"><p>the name of the font for line numbers, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-line-numbers-font-name"></a><h3>gtk_source_print_compositor_get_line_numbers_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gtk_source_print_compositor_get_line_numbers_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the name of the font used to print line numbers on the left margin.
The returned string must be freed with <code class="function">g_free()</code>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-line-numbers-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-line-numbers-font-name.returns"></a><h4>Returns</h4>
<p> a new string containing the name of the font used to print
line numbers on the left margin.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-header-font-name"></a><h3>gtk_source_print_compositor_set_header_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_header_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *font_name</code></em>);</pre>
<p>Sets the font for printing the page header. If
<code class="literal">NULL</code> is supplied, the default font (i.e. the one being used for the
text) will be used instead.</p>
<p><em class="parameter"><code>font_name</code></em>
 should be a
string representation of a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-header-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_name</p></td>
<td class="parameter_description"><p>the name of the font for header text, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-header-font-name"></a><h3>gtk_source_print_compositor_get_header_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gtk_source_print_compositor_get_header_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the name of the font used to print the page header.
The returned string must be freed with <code class="function">g_free()</code>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-header-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-header-font-name.returns"></a><h4>Returns</h4>
<p> a new string containing the name of the font used to print
the page header.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-footer-font-name"></a><h3>gtk_source_print_compositor_set_footer_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_footer_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *font_name</code></em>);</pre>
<p>Sets the font for printing the page footer. If
<code class="literal">NULL</code> is supplied, the default font (i.e. the one being used for the
text) will be used instead.</p>
<p><em class="parameter"><code>font_name</code></em>
 should be a
string representation of a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-footer-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>font_name</p></td>
<td class="parameter_description"><p>the name of the font for the footer text, or <code class="literal">NULL</code>. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-footer-font-name"></a><h3>gtk_source_print_compositor_get_footer_font_name ()</h3>
<pre class="programlisting"><span class="returnvalue">gchar</span> *
gtk_source_print_compositor_get_footer_font_name
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the name of the font used to print the page footer.
The returned string must be freed with <code class="function">g_free()</code>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-footer-font-name.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-footer-font-name.returns"></a><h4>Returns</h4>
<p> a new string containing the name of the font used to print
the page footer.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-top-margin"></a><h3>gtk_source_print_compositor_get_top_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gtk_source_print_compositor_get_top_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Gets the top margin in units of <em class="parameter"><code>unit</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-top-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the unit for the return value.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-top-margin.returns"></a><h4>Returns</h4>
<p> the top margin.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-top-margin"></a><h3>gtk_source_print_compositor_set_top_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_top_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gdouble</span> margin</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Sets the top margin used by <em class="parameter"><code>compositor</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-top-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>margin</p></td>
<td class="parameter_description"><p>the new top margin in units of <em class="parameter"><code>unit</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the units for <em class="parameter"><code>margin</code></em>
</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-bottom-margin"></a><h3>gtk_source_print_compositor_get_bottom_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gtk_source_print_compositor_get_bottom_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Gets the bottom margin in units of <em class="parameter"><code>unit</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-bottom-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the unit for the return value.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-bottom-margin.returns"></a><h4>Returns</h4>
<p> the bottom margin.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-bottom-margin"></a><h3>gtk_source_print_compositor_set_bottom_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_bottom_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gdouble</span> margin</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Sets the bottom margin used by <em class="parameter"><code>compositor</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-bottom-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>margin</p></td>
<td class="parameter_description"><p>the new bottom margin in units of <em class="parameter"><code>unit</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the units for <em class="parameter"><code>margin</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-left-margin"></a><h3>gtk_source_print_compositor_get_left_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gtk_source_print_compositor_get_left_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Gets the left margin in units of <em class="parameter"><code>unit</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-left-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the unit for the return value.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-left-margin.returns"></a><h4>Returns</h4>
<p> the left margin</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-left-margin"></a><h3>gtk_source_print_compositor_set_left_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_left_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gdouble</span> margin</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Sets the left margin used by <em class="parameter"><code>compositor</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-left-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>margin</p></td>
<td class="parameter_description"><p>the new left margin in units of <em class="parameter"><code>unit</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the units for <em class="parameter"><code>margin</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-right-margin"></a><h3>gtk_source_print_compositor_get_right_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gtk_source_print_compositor_get_right_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Gets the right margin in units of <em class="parameter"><code>unit</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-right-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the unit for the return value.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-right-margin.returns"></a><h4>Returns</h4>
<p> the right margin.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-right-margin"></a><h3>gtk_source_print_compositor_set_right_margin ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_right_margin
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gdouble</span> margin</code></em>,
                                <em class="parameter"><code><span class="type">GtkUnit</span> unit</code></em>);</pre>
<p>Sets the right margin used by <em class="parameter"><code>compositor</code></em>
.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-right-margin.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>margin</p></td>
<td class="parameter_description"><p>the new right margin in units of <em class="parameter"><code>unit</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>unit</p></td>
<td class="parameter_description"><p>the units for <em class="parameter"><code>margin</code></em>
.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-print-header"></a><h3>gtk_source_print_compositor_set_print_header ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_print_header
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> print</code></em>);</pre>
<p>Sets whether you want to print a header in each page.  The
header consists of three pieces of text and an optional line
separator, configurable with
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-header-format" title="gtk_source_print_compositor_set_header_format ()"><code class="function">gtk_source_print_compositor_set_header_format()</code></a>.</p>
<p>Note that by default the header format is unspecified, and if it's
empty it will not be printed, regardless of this setting.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-print-header.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>print</p></td>
<td class="parameter_description"><p><code class="literal">TRUE</code> if you want the header to be printed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-print-header"></a><h3>gtk_source_print_compositor_get_print_header ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_source_print_compositor_get_print_header
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Determines if a header is set to be printed for each page.  A
header will be printed if this function returns <code class="literal">TRUE</code>
<span class="emphasis"><em>and</em></span> some format strings have been specified
with <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-header-format" title="gtk_source_print_compositor_set_header_format ()"><code class="function">gtk_source_print_compositor_set_header_format()</code></a>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-header.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-header.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the header is set to be printed.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-print-footer"></a><h3>gtk_source_print_compositor_set_print_footer ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_print_footer
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> print</code></em>);</pre>
<p>Sets whether you want to print a footer in each page.  The
footer consists of three pieces of text and an optional line
separator, configurable with
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-footer-format" title="gtk_source_print_compositor_set_footer_format ()"><code class="function">gtk_source_print_compositor_set_footer_format()</code></a>.</p>
<p>Note that by default the footer format is unspecified, and if it's
empty it will not be printed, regardless of this setting.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-print-footer.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>print</p></td>
<td class="parameter_description"><p><code class="literal">TRUE</code> if you want the footer to be printed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-print-footer"></a><h3>gtk_source_print_compositor_get_print_footer ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_source_print_compositor_get_print_footer
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Determines if a footer is set to be printed for each page.  A
footer will be printed if this function returns <code class="literal">TRUE</code>
<span class="emphasis"><em>and</em></span> some format strings have been specified
with <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-footer-format" title="gtk_source_print_compositor_set_footer_format ()"><code class="function">gtk_source_print_compositor_set_footer_format()</code></a>.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-footer.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-print-footer.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the footer is set to be printed.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-header-format"></a><h3>gtk_source_print_compositor_set_header_format ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_header_format
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> separator</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *left</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *center</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *right</code></em>);</pre>
<p>Sets strftime like header format strings, to be printed on the
left, center and right of the top of each page.  The strings may
include strftime(3) codes which will be expanded at print time.
A subset of <code class="function">strftime()</code> codes are accepted, see <code class="function">g_date_time_format()</code>
for more details on the accepted format specifiers.
Additionally the following format specifiers are accepted:</p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>#N: the page number</p></li>
<li class="listitem"><p>#Q: the page count.</p></li>
</ul></div>
<p><em class="parameter"><code>separator</code></em>
 specifies if a solid line should be drawn to separate
the header from the document text.</p>
<p>If <code class="literal">NULL</code> is given for any of the three arguments, that particular
string will not be printed.</p>
<p>For the header to be printed, in
addition to specifying format strings, you need to enable header
printing with <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-print-header" title="gtk_source_print_compositor_set_print_header ()"><code class="function">gtk_source_print_compositor_set_print_header()</code></a>.</p>
<p>This function cannot be called anymore after the first call to the
<a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-header-format.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>separator</p></td>
<td class="parameter_description"><p><code class="literal">TRUE</code> if you want a separator line to be printed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>left</p></td>
<td class="parameter_description"><p>a format string to print on the left of the header. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>center</p></td>
<td class="parameter_description"><p>a format string to print on the center of the header. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>right</p></td>
<td class="parameter_description"><p>a format string to print on the right of the header. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-set-footer-format"></a><h3>gtk_source_print_compositor_set_footer_format ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_set_footer_format
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                <em class="parameter"><code><span class="type">gboolean</span> separator</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *left</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *center</code></em>,
                                <em class="parameter"><code>const <span class="type">gchar</span> *right</code></em>);</pre>
<p>See <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-set-header-format" title="gtk_source_print_compositor_set_header_format ()"><code class="function">gtk_source_print_compositor_set_header_format()</code></a> for more information
about the parameters.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-set-footer-format.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>separator</p></td>
<td class="parameter_description"><p><code class="literal">TRUE</code> if you want a separator line to be printed.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>left</p></td>
<td class="parameter_description"><p>a format string to print on the left of the footer. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>center</p></td>
<td class="parameter_description"><p>a format string to print on the center of the footer. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
<tr>
<td class="parameter_name"><p>right</p></td>
<td class="parameter_description"><p>a format string to print on the right of the footer. </p></td>
<td class="parameter_annotations"><span class="annotation">[<acronym title="NULL may be passed as the value in, out, in-out; or as a return value."><span class="acronym">nullable</span></acronym>]</span></td>
</tr>
</tbody>
</table></div>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-n-pages"></a><h3>gtk_source_print_compositor_get_n_pages ()</h3>
<pre class="programlisting"><span class="returnvalue">gint</span>
gtk_source_print_compositor_get_n_pages
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the number of pages in the document or <code class="code">-1</code> if the
document has not been completely paginated.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-n-pages.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-n-pages.returns"></a><h4>Returns</h4>
<p> the number of pages in the document or <code class="code">-1</code> if the
document has not been completely paginated.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-paginate"></a><h3>gtk_source_print_compositor_paginate ()</h3>
<pre class="programlisting"><span class="returnvalue">gboolean</span>
gtk_source_print_compositor_paginate (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                      <em class="parameter"><code><span class="type">GtkPrintContext</span> *context</code></em>);</pre>
<p>Paginate the document associated with the <em class="parameter"><code>compositor</code></em>
.</p>
<p>In order to support non-blocking pagination, document is paginated in small chunks.
Each time <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> is invoked, a chunk of the document
is paginated. To paginate the entire document, <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a>
must be invoked multiple times.
It returns <code class="literal">TRUE</code> if the document has been completely paginated, otherwise it returns <code class="literal">FALSE</code>.</p>
<p>This method has been designed to be invoked in the handler of the <span class="type">“paginate”</span> signal,
as shown in the following example:</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="comment">// Signal handler for the GtkPrintOperation::paginate signal</span>

<span class="keyword">static</span><span class="normal"> gboolean</span>
<span class="function">paginate</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GtkPrintOperation</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">operation</span><span class="symbol">,</span>
<span class="normal">          </span><span class="usertype">GtkPrintContext</span><span class="normal">   </span><span class="symbol">*</span><span class="normal">context</span><span class="symbol">,</span>
<span class="normal">          </span><span class="usertype">gpointer</span><span class="normal">           user_data</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">    </span><span class="usertype">GtkSourcePrintCompositor</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">compositor</span><span class="symbol">;</span>

<span class="normal">    compositor </span><span class="symbol">=</span><span class="normal"> </span><span class="function">GTK_SOURCE_PRINT_COMPOSITOR</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">user_data</span><span class="symbol">);</span>

<span class="normal">    </span><span class="keyword">if</span><span class="normal"> </span><span class="symbol">(</span><span class="function"><a href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate">gtk_source_print_compositor_paginate</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">compositor</span><span class="symbol">,</span><span class="normal"> context</span><span class="symbol">))</span>
<span class="normal">    </span><span class="cbracket">{</span>
<span class="normal">        </span><span class="usertype">gint</span><span class="normal"> n_pages</span><span class="symbol">;</span>

<span class="normal">        n_pages </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-n-pages">gtk_source_print_compositor_get_n_pages</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">compositor</span><span class="symbol">);</span>
<span class="normal">        </span><span class="function">gtk_print_operation_set_n_pages</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">operation</span><span class="symbol">,</span><span class="normal"> n_pages</span><span class="symbol">);</span>

<span class="normal">        </span><span class="keyword">return</span><span class="normal"> TRUE</span><span class="symbol">;</span>
<span class="normal">    </span><span class="cbracket">}</span>

<span class="normal">    </span><span class="keyword">return</span><span class="normal"> FALSE</span><span class="symbol">;</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<p>If you don't need to do pagination in chunks, you can simply do it all in the
<span class="type">“begin-print”</span> handler, and set the number of pages from there, like
in the following example:</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="comment">// Signal handler for the GtkPrintOperation::begin-print signal</span>

<span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
<span class="function">begin_print</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GtkPrintOperation</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">operation</span><span class="symbol">,</span>
<span class="normal">             </span><span class="usertype">GtkPrintContext</span><span class="normal">   </span><span class="symbol">*</span><span class="normal">context</span><span class="symbol">,</span>
<span class="normal">             </span><span class="usertype">gpointer</span><span class="normal">           user_data</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">    </span><span class="usertype">GtkSourcePrintCompositor</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">compositor</span><span class="symbol">;</span>
<span class="normal">    </span><span class="usertype">gint</span><span class="normal"> n_pages</span><span class="symbol">;</span>

<span class="normal">    compositor </span><span class="symbol">=</span><span class="normal"> </span><span class="function">GTK_SOURCE_PRINT_COMPOSITOR</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">user_data</span><span class="symbol">);</span>

<span class="normal">    </span><span class="keyword">while</span><span class="normal"> </span><span class="symbol">(!</span><span class="function"><a href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate">gtk_source_print_compositor_paginate</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">compositor</span><span class="symbol">,</span><span class="normal"> context</span><span class="symbol">));</span>

<span class="normal">    n_pages </span><span class="symbol">=</span><span class="normal"> </span><span class="function"><a href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-get-n-pages">gtk_source_print_compositor_get_n_pages</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">compositor</span><span class="symbol">);</span>
<span class="normal">    </span><span class="function">gtk_print_operation_set_n_pages</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">operation</span><span class="symbol">,</span><span class="normal"> n_pages</span><span class="symbol">);</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<div class="refsect3">
<a name="gtk-source-print-compositor-paginate.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>context</p></td>
<td class="parameter_description"><p>the <span class="type">GtkPrintContext</span> whose parameters (e.g. paper size, print margins, etc.)
are used by the the <em class="parameter"><code>compositor</code></em>
to paginate the document.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-paginate.returns"></a><h4>Returns</h4>
<p> <code class="literal">TRUE</code> if the document has been completely paginated, <code class="literal">FALSE</code> otherwise.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-get-pagination-progress"></a><h3>gtk_source_print_compositor_get_pagination_progress ()</h3>
<pre class="programlisting"><span class="returnvalue">gdouble</span>
gtk_source_print_compositor_get_pagination_progress
                               (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>);</pre>
<p>Returns the current fraction of the document pagination that has been completed.</p>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-pagination-progress.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody><tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr></tbody>
</table></div>
</div>
<div class="refsect3">
<a name="gtk-source-print-compositor-get-pagination-progress.returns"></a><h4>Returns</h4>
<p> a fraction from 0.0 to 1.0 inclusive.</p>
</div>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="gtk-source-print-compositor-draw-page"></a><h3>gtk_source_print_compositor_draw_page ()</h3>
<pre class="programlisting"><span class="returnvalue">void</span>
gtk_source_print_compositor_draw_page (<em class="parameter"><code><a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a> *compositor</code></em>,
                                       <em class="parameter"><code><span class="type">GtkPrintContext</span> *context</code></em>,
                                       <em class="parameter"><code><span class="type">gint</span> page_nr</code></em>);</pre>
<p>Draw page <em class="parameter"><code>page_nr</code></em>
 for printing on the the Cairo context encapsuled in <em class="parameter"><code>context</code></em>
.</p>
<p>This method has been designed to be called in the handler of the <span class="type">“draw_page”</span> signal
as shown in the following example:</p>
<div class="informalexample">
  <table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
    <tbody>
      <tr>
        <td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16</pre></td>
        <td class="listing_code"><pre class="programlisting"><span class="comment">// Signal handler for the GtkPrintOperation::draw_page signal</span>

<span class="keyword">static</span><span class="normal"> </span><span class="type">void</span>
<span class="function">draw_page</span><span class="normal"> </span><span class="symbol">(</span><span class="usertype">GtkPrintOperation</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">operation</span><span class="symbol">,</span>
<span class="normal">           </span><span class="usertype">GtkPrintContext</span><span class="normal">   </span><span class="symbol">*</span><span class="normal">context</span><span class="symbol">,</span>
<span class="normal">           </span><span class="usertype">gint</span><span class="normal">               page_nr</span><span class="symbol">,</span>
<span class="normal">           </span><span class="usertype">gpointer</span><span class="normal">           user_data</span><span class="symbol">)</span>
<span class="cbracket">{</span>
<span class="normal">    </span><span class="usertype">GtkSourcePrintCompositor</span><span class="normal"> </span><span class="symbol">*</span><span class="normal">compositor</span><span class="symbol">;</span>

<span class="normal">    compositor </span><span class="symbol">=</span><span class="normal"> </span><span class="function">GTK_SOURCE_PRINT_COMPOSITOR</span><span class="normal"> </span><span class="symbol">(</span><span class="normal">user_data</span><span class="symbol">);</span>

<span class="normal">    </span><span class="function"><a href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-draw-page">gtk_source_print_compositor_draw_page</a></span><span class="normal"> </span><span class="symbol">(</span><span class="normal">compositor</span><span class="symbol">,</span>
<span class="normal">                                           context</span><span class="symbol">,</span>
<span class="normal">                                           page_nr</span><span class="symbol">);</span>
<span class="cbracket">}</span></pre></td>
      </tr>
    </tbody>
  </table>
</div>

<div class="refsect3">
<a name="gtk-source-print-compositor-draw-page.parameters"></a><h4>Parameters</h4>
<div class="informaltable"><table class="informaltable" width="100%" border="0">
<colgroup>
<col width="150px" class="parameters_name">
<col class="parameters_description">
<col width="200px" class="parameters_annotations">
</colgroup>
<tbody>
<tr>
<td class="parameter_name"><p>compositor</p></td>
<td class="parameter_description"><p>a <a class="link" href="GtkSourcePrintCompositor.html" title="GtkSourcePrintCompositor"><span class="type">GtkSourcePrintCompositor</span></a>.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>context</p></td>
<td class="parameter_description"><p>the <span class="type">GtkPrintContext</span> encapsulating the context information that is required when
drawing the page for printing.</p></td>
<td class="parameter_annotations"> </td>
</tr>
<tr>
<td class="parameter_name"><p>page_nr</p></td>
<td class="parameter_description"><p>the number of the page to print.</p></td>
<td class="parameter_annotations"> </td>
</tr>
</tbody>
</table></div>
</div>
</div>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.other_details"></a><h2>Types and Values</h2>
<div class="refsect2">
<a name="GtkSourcePrintCompositor-struct"></a><h3>GtkSourcePrintCompositor</h3>
<pre class="programlisting">typedef struct _GtkSourcePrintCompositor GtkSourcePrintCompositor;</pre>
</div>
</div>
<div class="refsect1">
<a name="GtkSourcePrintCompositor.property-details"></a><h2>Property Details</h2>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--body-font-name"></a><h3>The <code class="literal">“body-font-name”</code> property</h3>
<pre class="programlisting">  “body-font-name”           <span class="type">gchar</span> *</pre>
<p>Name of the font used for the text body.</p>
<p>Accepted values are strings representing a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--buffer"></a><h3>The <code class="literal">“buffer”</code> property</h3>
<pre class="programlisting">  “buffer”                   <a class="link" href="GtkSourceBuffer.html" title="GtkSourceBuffer"><span class="type">GtkSourceBuffer</span></a> *</pre>
<p>The GtkSourceBuffer object to print.</p>
<p>Flags: Read / Write / Construct Only</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--footer-font-name"></a><h3>The <code class="literal">“footer-font-name”</code> property</h3>
<pre class="programlisting">  “footer-font-name”         <span class="type">gchar</span> *</pre>
<p>Name of the font used to print page footer.
If this property is unspecified, the text body font is used.</p>
<p>Accepted values are strings representing a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--header-font-name"></a><h3>The <code class="literal">“header-font-name”</code> property</h3>
<pre class="programlisting">  “header-font-name”         <span class="type">gchar</span> *</pre>
<p>Name of the font used to print page header.
If this property is unspecified, the text body font is used.</p>
<p>Accepted values are strings representing a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--highlight-syntax"></a><h3>The <code class="literal">“highlight-syntax”</code> property</h3>
<pre class="programlisting">  “highlight-syntax”         <span class="type">gboolean</span></pre>
<p>Whether to print the document with highlighted syntax.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: TRUE</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--line-numbers-font-name"></a><h3>The <code class="literal">“line-numbers-font-name”</code> property</h3>
<pre class="programlisting">  “line-numbers-font-name”   <span class="type">gchar</span> *</pre>
<p>Name of the font used to print line numbers on the left margin.
If this property is unspecified, the text body font is used.</p>
<p>Accepted values are strings representing a font description Pango can understand.
(e.g. "Monospace 10"). See <code class="function">pango_font_description_from_string()</code>
for a description of the format of the string representation.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: NULL</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--n-pages"></a><h3>The <code class="literal">“n-pages”</code> property</h3>
<pre class="programlisting">  “n-pages”                  <span class="type">gint</span></pre>
<p>The number of pages in the document or <code class="code">-1</code> if the
document has not been completely paginated.</p>
<p>Flags: Read</p>
<p>Allowed values: &gt;= -1</p>
<p>Default value: -1</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--print-footer"></a><h3>The <code class="literal">“print-footer”</code> property</h3>
<pre class="programlisting">  “print-footer”             <span class="type">gboolean</span></pre>
<p>Whether to print a footer in each page.</p>
<p>Note that by default the footer format is unspecified, and if it is
unspecified the footer will not be printed, regardless of the value of
this property.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: FALSE</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--print-header"></a><h3>The <code class="literal">“print-header”</code> property</h3>
<pre class="programlisting">  “print-header”             <span class="type">gboolean</span></pre>
<p>Whether to print a header in each page.</p>
<p>Note that by default the header format is unspecified, and if it is
unspecified the header will not be printed, regardless of the value of
this property.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: FALSE</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--print-line-numbers"></a><h3>The <code class="literal">“print-line-numbers”</code> property</h3>
<pre class="programlisting">  “print-line-numbers”       <span class="type">guint</span></pre>
<p>Interval of printed line numbers. If this property is set to 0 no
numbers will be printed.  If greater than 0, a number will be
printed every "print-line-numbers" lines (i.e. 1 will print all line numbers).</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: &lt;= 100</p>
<p>Default value: 1</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--tab-width"></a><h3>The <code class="literal">“tab-width”</code> property</h3>
<pre class="programlisting">  “tab-width”                <span class="type">guint</span></pre>
<p>Width of a tab character expressed in spaces.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Allowed values: [1,32]</p>
<p>Default value: 8</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
<hr>
<div class="refsect2">
<a name="GtkSourcePrintCompositor--wrap-mode"></a><h3>The <code class="literal">“wrap-mode”</code> property</h3>
<pre class="programlisting">  “wrap-mode”                <span class="type">GtkWrapMode</span></pre>
<p>Whether to wrap lines never, at word boundaries, or at character boundaries.</p>
<p>The value of this property cannot be changed anymore after the first
call to the <a class="link" href="GtkSourcePrintCompositor.html#gtk-source-print-compositor-paginate" title="gtk_source_print_compositor_paginate ()"><code class="function">gtk_source_print_compositor_paginate()</code></a> function.</p>
<p>Flags: Read / Write</p>
<p>Default value: GTK_WRAP_NONE</p>
<p class="since">Since: <a class="link" href="api-index-2-2.html#api-index-2.2">2.2</a></p>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.28.1</div>
</body>
</html>