X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ffont-select.cc;h=2de54e395581d652a43128e9b4eeb9f6711769fe;hb=0e5d83a9ceb4a143f83d22406d7eb816314ff9f7;hp=c4d85f864ac34ca158bc1dfc62d2dbbcfd4e5222;hpb=08799b9501bc361026e59eed5789e4b0b4a7b61e;p=lilypond.git diff --git a/lily/font-select.cc b/lily/font-select.cc index c4d85f864a..2de54e3955 100644 --- a/lily/font-select.cc +++ b/lily/font-select.cc @@ -3,10 +3,9 @@ source file of the GNU LilyPond music typesetter - (c) 2003--2005 Han-Wen Nienhuys + (c) 2003--2009 Han-Wen Nienhuys */ -#include #include "dimensions.hh" #include "all-font-metrics.hh" @@ -77,9 +76,7 @@ get_font_by_design_size (Output_def *layout, Real requested, #endif } else - { - fm = unsmob_metrics (scm_force (scm_c_vector_ref (font_vector, i))); - } + fm = unsmob_metrics (scm_force (scm_c_vector_ref (font_vector, i))); return find_scaled_font (layout, fm, requested / size); } @@ -112,30 +109,18 @@ select_encoded_font (Output_def *layout, SCM chain) } #if HAVE_PANGO_FT2 - if (scm_is_string (name) - && is_pango_format_global) - { - return select_pango_font (layout, chain); - } + if (scm_is_string (name)) + return select_pango_font (layout, chain); else #endif - if (scm_is_string (name)) - { - Real rmag = - robust_scm2double (ly_chain_assoc_get (ly_symbol2scm ("font-magnification"), chain, SCM_BOOL_F), - 1.0); - Font_metric *fm = all_fonts_global->find_font (ly_scm2string (name)); - - return find_scaled_font (layout, fm, rmag); - } - else if (scm_instance_p (name)) + if (scm_instance_p (name)) { SCM base_size = scm_slot_ref (name, ly_symbol2scm ("default-size")); SCM vec = scm_slot_ref (name, ly_symbol2scm ("size-vector")); Real req = robust_scm2double (ly_chain_assoc_get (ly_symbol2scm ("font-size"), chain, SCM_BOOL_F), 0.0); - + return get_font_by_mag_step (layout, req, vec, scm_to_double (base_size)); }