summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authortagoh <tagoh>2006-09-07 06:09:52 +0000
committertagoh <tagoh>2006-09-07 06:09:52 +0000
commit59f3048538e01f160f14a46a40ed37c4588d227b (patch)
treeb3604997ea247b2fee4c1f83dcab1435c63bf8cc
parent9de827fc17030f1183f3db8690e5706ab398bb94 (diff)
downloadpaps-59f3048538e01f160f14a46a40ed37c4588d227b.tar.gz
paps-59f3048538e01f160f14a46a40ed37c4588d227b.tar.xz
paps-59f3048538e01f160f14a46a40ed37c4588d227b.zip
* src/paps.c (split_text_into_paragraphs): support the wordwrap from Pango. (#1512385)
-rw-r--r--ChangeLog1
-rw-r--r--src/paps.c5
2 files changed, 6 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index bee969b..60c7432 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -5,6 +5,7 @@
works like specifying PangoFontDescription. (#1512382)
(get_language): new function.
(main): give a proper language to PangoContext. (#1512384)
+ (split_text_into_paragraphs): support the wordwrap from Pango. (#1512385)
* src/paps.1: removed --font-scale and --family description and added
--font instead.
diff --git a/src/paps.c b/src/paps.c
index a263b9a..2a0794b 100644
--- a/src/paps.c
+++ b/src/paps.c
@@ -79,6 +79,7 @@ typedef struct {
gboolean do_justify;
gboolean do_separation_line;
gboolean do_draw_contour;
+ gboolean do_wordwrap;
PangoDirection pango_dir;
gchar *filename;
gchar *header_font_desc;
@@ -212,6 +213,7 @@ get_language(void)
int main(int argc, char *argv[])
{
gboolean do_landscape = FALSE, do_rtl = FALSE, do_justify = FALSE, do_draw_header = FALSE;
+ gboolean do_wordwrap = TRUE;
int num_columns = 1;
int top_margin = 36, bottom_margin = 36, right_margin = 36, left_margin = 36;
gchar *font = MAKE_FONT_NAME (DEFAULT_FONT_FAMILY, DEFAULT_FONT_SIZE), *encoding = NULL;
@@ -340,6 +342,7 @@ int main(int argc, char *argv[])
page_layout.header_ypos = page_layout.top_margin;
page_layout.header_height = 0;
page_layout.footer_height = 0;
+ page_layout.do_wordwrap = do_wordwrap;
if (do_draw_header)
page_layout.header_sep = header_sep;
else
@@ -496,6 +499,8 @@ split_text_into_paragraphs (PangoContext *pango_context,
page_layout->pango_dir == PANGO_DIRECTION_LTR
? PANGO_ALIGN_LEFT : PANGO_ALIGN_RIGHT);
pango_layout_set_width (para->layout, paint_width * PANGO_SCALE);
+ if (page_layout->do_wordwrap)
+ pango_layout_set_wrap (para->layout, PANGO_WRAP_WORD_CHAR);
para->height = 0;
if (wc == '\f')