X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpango-font.cc;h=9e3a2d38b30b53086c1067759a6e15c75680c315;hb=1d9fc4b1512eb69a28677890dc26658c3552c6cd;hp=e4a07a9fd5ca8bd719c83f4bd084dc442998650e;hpb=01df8ad908c92687d0c352e5ad5f067e52809423;p=lilypond.git diff --git a/lily/pango-font.cc b/lily/pango-font.cc index e4a07a9fd5..9e3a2d38b3 100644 --- a/lily/pango-font.cc +++ b/lily/pango-font.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 2004--2012 Han-Wen Nienhuys + Copyright (C) 2004--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -22,7 +22,8 @@ #define PANGO_ENABLE_BACKEND #include -#include +#include "freetype.hh" +#include FT_XFREE86_H #include #include @@ -34,6 +35,7 @@ #include "file-name.hh" #include "international.hh" #include "lookup.hh" // debugging +#include "ly-module.hh" #include "main.hh" #include "string-convert.hh" #include "warn.hh" @@ -81,8 +83,8 @@ Pango_font::~Pango_font () } void -Pango_font::register_font_file (string filename, - string ps_name, +Pango_font::register_font_file (const string &filename, + const string &ps_name, int face_index) { scm_hash_set_x (physical_font_tab_, @@ -289,7 +291,7 @@ Pango_font::pango_item_string_stencil (PangoGlyphItem const *glyph_item) const char_id = scm_from_uint32 (pg); } else - char_id = scm_from_locale_string (glyph_name); + char_id = scm_from_utf8_string (glyph_name); PangoRectangle logical_sub_rect; PangoRectangle ink_sub_rect; @@ -383,7 +385,7 @@ extern bool music_strings_to_paths; Stencil Pango_font::text_stencil (Output_def * /* state */, - string str, bool music_string) const + const string &str, bool music_string) const { /* The text assigned to a PangoLayout is automatically divided @@ -439,8 +441,8 @@ Pango_font::text_stencil (Output_def * /* state */, variable that is bound to a *named* procedure, i.e. not a lambda expression. */ - if (utf8_string != SCM_BOOL_F - && scm_procedure_name (SCM_VARIABLE_REF (utf8_string)) != SCM_BOOL_F) + if (scm_is_true (utf8_string) + && scm_is_true (scm_procedure_name (SCM_VARIABLE_REF (utf8_string)))) has_utf8_string = true; }