summaryrefslogtreecommitdiff
path: root/docs/tmpl/layout.sgml
diff options
context:
space:
mode:
authorOwen Taylor <otaylor@redhat.com>2000-03-08 18:39:49 +0000
committerOwen Taylor <otaylor@src.gnome.org>2000-03-08 18:39:49 +0000
commit773bc55fc9e344f8040809ba8796b0ba2805e4c9 (patch)
tree89e900594294e87b4a4de8f71571762d6ccc8871 /docs/tmpl/layout.sgml
parentdd0b4a5064c6f60adcfd2ea02e2d61fb60254d20 (diff)
downloadpango-773bc55fc9e344f8040809ba8796b0ba2805e4c9.tar.gz
First draft of highlevel driver. It currently only handles a paragraph as
Wed Mar 8 13:34:57 2000 Owen Taylor <otaylor@redhat.com> * libpango/pango-layout.[ch]: First draft of highlevel driver. It currently only handles a paragraph as a list of lines, but it is probably necessary to make it handle 2D layout for a paragraph as well * examples/viewer.c: Move over to new layout driver (much of the code moved into pango-layout.c) * libpango/glyphs.c libpango/pango-glyphs.h: Fixes to get_extents(), add pango_glyph_string_get_logical_widths. * libpango/pango-itemize.c: Handle 0-length text properly. * libpango/pangox.c: When loading particular sized fonts, use the original XLFD, since XFree86 doesn't handle wildcards in aliases properly. * libpango/pangox.[ch] (pango_x_render_layout_line): Add function to render an entire PangoLayoutLine. * libpango/reorder-items.c: Add a note to the effect that pango_reorder_items() is basically replaced by a similar function in PangoLayout. Wed Mar 8 10:58:56 2000 Owen Taylor <otaylor@redhat.com> * modules/arabic/arconv.c (shapecount): Fix from Karl Koehler to joining behavior. * modules/Makefile.am modules/arabic/*: Added arabic shaper from Karl Koehler <koehler@or.uni-bonn.de> * modules/basic/tables-{small,big}.i: Remove arabic from the ranges that the basic shaper marks as "exact". * examples/HELLO.utf8: Partially alphabetize, add arabic.
Diffstat (limited to 'docs/tmpl/layout.sgml')
-rw-r--r--docs/tmpl/layout.sgml195
1 files changed, 195 insertions, 0 deletions
diff --git a/docs/tmpl/layout.sgml b/docs/tmpl/layout.sgml
new file mode 100644
index 00000000..aa44fd98
--- /dev/null
+++ b/docs/tmpl/layout.sgml
@@ -0,0 +1,195 @@
+<!-- ##### SECTION Title ##### -->
+Layout Objects
+
+<!-- ##### SECTION Short_Description ##### -->
+Layout driver objects for entire paragraphs.
+
+<!-- ##### SECTION Long_Description ##### -->
+<para>
+While complete access to the layout capabilities of Pango is provided
+using the detailed interfaces for itemization and shaping, using
+that functionality directly involves writing a fairly large amount
+of code. The objects and functions in this structure provide a
+high-level driver for formatting entire paragraphs of text
+at once.
+</para>
+
+<!-- ##### SECTION See_Also ##### -->
+<para>
+
+</para>
+
+<!-- ##### STRUCT PangoLayout ##### -->
+<para>
+The #PangoLayout structure represents and entire paragraph
+of text. It is initialized with a #PangoContext, UTF-8 string
+and set of attirbutes for that string. Once that is done, the
+set of formatted lines can be extracted from the object.
+</para>
+
+
+<!-- ##### STRUCT PangoLayoutLine ##### -->
+<para>
+The #PangoLayoutLine structure represents one of the lines resulting
+from laying out a paragraph via #PangoLayout. #PangoLayoutLine
+structures are obtained by calling pango_layout_get_line() and
+are only valid until the text, attributes, or settings of the
+parent #PangoLayout are modified.
+</para>
+<para>
+Routines for rendering PangoLayout objects are provided in
+code specific to each rendering system.
+</para>
+
+@layout: the parent layout for this line.
+@n_chars: the total number of characters in the line.
+@length: the length of the line in bytes.
+@runs: a list containing the runs of the line in visual order.
+
+<!-- ##### STRUCT PangoLayoutRun ##### -->
+<para>
+The #PangoLayoutRun structure represents a single run within
+a #PangoLayoutLine.
+</para>
+
+@item: a #PangoItem structure that provides information
+ about the segment of text in this run.
+@glyphs: the glyphs obtained by shaping the text for this item.
+
+<!-- ##### FUNCTION pango_layout_new ##### -->
+<para>
+
+</para>
+
+@Returns:
+
+
+<!-- ##### FUNCTION pango_layout_ref ##### -->
+<para>
+
+</para>
+
+@layout:
+
+
+<!-- ##### FUNCTION pango_layout_unref ##### -->
+<para>
+
+</para>
+
+@layout:
+
+
+<!-- ##### FUNCTION pango_layout_set_text ##### -->
+<para>
+
+</para>
+
+@text:
+@length:
+
+
+<!-- ##### FUNCTION pango_layout_set_attributes ##### -->
+<para>
+
+</para>
+
+@layout:
+@attrs:
+
+
+<!-- ##### FUNCTION pango_layout_set_width ##### -->
+<para>
+
+</para>
+
+@layout:
+@width:
+
+
+<!-- ##### FUNCTION pango_layout_set_first_line_width ##### -->
+<para>
+
+</para>
+
+@layout:
+@width:
+
+
+<!-- ##### FUNCTION pango_layout_set_justify ##### -->
+<para>
+
+</para>
+
+@layout:
+@justify:
+
+
+<!-- ##### FUNCTION pango_layout_cp_to_line_x ##### -->
+<para>
+
+</para>
+
+@layout:
+@char_pos:
+@trailing:
+@line:
+@x_pos:
+
+
+<!-- ##### FUNCTION pango_layout_get_line_count ##### -->
+<para>
+
+</para>
+
+@layout:
+@Returns:
+
+
+<!-- ##### FUNCTION pango_layout_get_line ##### -->
+<para>
+
+</para>
+
+@layout:
+@line:
+@Returns:
+
+
+<!-- ##### FUNCTION pango_layout_line_ref ##### -->
+<para>
+
+</para>
+
+@line:
+
+
+<!-- ##### FUNCTION pango_layout_line_unref ##### -->
+<para>
+
+</para>
+
+@line:
+
+
+<!-- ##### FUNCTION pango_layout_line_x_to_cp ##### -->
+<para>
+
+</para>
+
+@line:
+@x_pos:
+@char_pos:
+@trailing:
+
+
+<!-- ##### FUNCTION pango_layout_line_get_extents ##### -->
+<para>
+
+</para>
+
+@line:
+@ink_rect:
+@logical_rect:
+
+