[librsvg] New accessor rsvg_state_get_font_decor()
- From: Federico Mena Quintero <federico src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [librsvg] New accessor rsvg_state_get_font_decor()
- Date: Fri, 15 Dec 2017 18:54:07 +0000 (UTC)
commit 7c5b68ff92a18366187d5ba102f43877a25bb850
Author: Federico Mena Quintero <federico gnome org>
Date: Fri Dec 15 11:18:06 2017 -0600
New accessor rsvg_state_get_font_decor()
rsvg-styles.c | 9 +++++++++
rsvg-styles.h | 3 +++
rsvg-text.c | 8 +++++---
3 files changed, 17 insertions(+), 3 deletions(-)
---
diff --git a/rsvg-styles.c b/rsvg-styles.c
index b8551a3..f52d64f 100644
--- a/rsvg-styles.c
+++ b/rsvg-styles.c
@@ -1831,3 +1831,12 @@ rsvg_state_get_letter_spacing (RsvgState *state)
return state->letter_spacing;
}
+const TextDecoration *
+rsvg_state_get_font_decor (RsvgState *state)
+{
+ if (state->has_font_decor) {
+ return &state->font_decor;
+ } else {
+ return NULL;
+ }
+}
diff --git a/rsvg-styles.h b/rsvg-styles.h
index 7aa9f59..aede7da 100644
--- a/rsvg-styles.h
+++ b/rsvg-styles.h
@@ -281,6 +281,9 @@ PangoStretch rsvg_state_get_font_stretch (RsvgState *state);
G_GNUC_INTERNAL
RsvgLength rsvg_state_get_letter_spacing (RsvgState *state);
+G_GNUC_INTERNAL
+const TextDecoration *rsvg_state_get_font_decor (RsvgState *state);
+
G_END_DECLS
#endif /* RSVG_STYLES_H */
diff --git a/rsvg-text.c b/rsvg-text.c
index 43cab01..4df0b5b 100644
--- a/rsvg-text.c
+++ b/rsvg-text.c
@@ -561,6 +561,7 @@ rsvg_text_create_layout (RsvgDrawingCtx *ctx, const char *text)
const char *lang;
UnicodeBidi unicode_bidi;
RsvgLength letter_spacing;
+ const TextDecoration *font_decor;
g_assert (text != NULL);
@@ -603,12 +604,13 @@ rsvg_text_create_layout (RsvgDrawingCtx *ctx, const char *text)
pango_attr_list_insert (attr_list,
pango_attr_letter_spacing_new (rsvg_length_normalize (&letter_spacing, ctx) *
PANGO_SCALE));
- if (state->has_font_decor) {
- if (state->font_decor.underline) {
+ font_decor = rsvg_state_get_font_decor (state);
+ if (font_decor) {
+ if (font_decor->underline) {
pango_attr_list_insert (attr_list,
pango_attr_underline_new (PANGO_UNDERLINE_SINGLE));
}
- if (state->font_decor.strike) {
+ if (font_decor->strike) {
pango_attr_list_insert (attr_list,
pango_attr_strikethrough_new (TRUE));
}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]