1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
/* Fo
* fo-property-common-font.c: Common font property functions
*
* Copyright (C) 2001 Sun Microsystems
* Copyright (C) 2007-2008 Menteith Consulting Ltd
*
* See COPYING for the status of this software.
*/
#include "property/fo-property-common-font.h"
#include "property/fo-property-text-property.h"
#include "property/fo-property-font-family.h"
#include "property/fo-property-font-size.h"
#include "property/fo-property-font-stretch.h"
#include "property/fo-property-font-style.h"
#include "property/fo-property-font-variant.h"
#include "property/fo-property-font-weight.h"
GList*
fo_property_common_font_get_pango_attrs (FoProperty *font_family,
/* No font-selection-strategy */
FoProperty *font_size,
FoProperty *font_stretch,
/* No font-size-adjust */
FoProperty *font_style,
FoProperty *font_variant,
FoProperty *font_weight,
gint start_index,
gint end_index)
{
PangoAttribute *pango_attr;
GList *pango_attr_glist = NULL;
g_return_val_if_fail (FO_IS_PROPERTY_FONT_FAMILY (font_family), NULL);
g_return_val_if_fail (FO_IS_PROPERTY_FONT_SIZE (font_size), NULL);
g_return_val_if_fail (FO_IS_PROPERTY_FONT_STRETCH (font_stretch), NULL);
g_return_val_if_fail (FO_IS_PROPERTY_FONT_STYLE (font_style), NULL);
g_return_val_if_fail (FO_IS_PROPERTY_FONT_VARIANT (font_variant), NULL);
g_return_val_if_fail (FO_IS_PROPERTY_FONT_WEIGHT (font_weight), NULL);
pango_attr = fo_property_text_property_new_attr (font_family);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
pango_attr_glist = g_list_prepend (pango_attr_glist,
pango_attr);
pango_attr = fo_property_text_property_new_attr (font_size);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
pango_attr_glist = g_list_prepend (pango_attr_glist,
pango_attr);
pango_attr = fo_property_text_property_new_attr (font_stretch);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
pango_attr_glist = g_list_prepend (pango_attr_glist,
pango_attr);
pango_attr = fo_property_text_property_new_attr (font_style);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
pango_attr_glist = g_list_prepend (pango_attr_glist,
pango_attr);
pango_attr = fo_property_text_property_new_attr (font_variant);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
pango_attr_glist = g_list_prepend (pango_attr_glist,
pango_attr);
pango_attr = fo_property_text_property_new_attr (font_weight);
pango_attr->start_index = start_index;
pango_attr->end_index = end_index;
return g_list_prepend (pango_attr_glist,
pango_attr);
}
|