-*/
-Font_metric *
-Paper_def::find_font (SCM fn, Real m)
-{
- SCM key = gh_cons (fn, gh_double2scm (m));
- SCM met = scm_assoc (key, scaled_fonts_);
-
- if (gh_pair_p (met))
- return unsmob_metrics (ly_cdr (met));
-
- /*
- Hmm. We're chaining font - metrics. Should consider wether to merge
- virtual-font and scaled_font.
- */
- Font_metric* f=0;
- if (gh_list_p (fn))
- {
- f = new Virtual_font_metric (fn, m, this);
- }
- else
- {
- SCM ssc;
- if (variable_tab_->try_retrieve (ly_symbol2scm ("outputscale"), &ssc))
- {
- m /= gh_scm2double (ssc);
- }
-
- f = all_fonts_global->find_font (ly_scm2string (fn));
- SCM val = Scaled_font_metric::make_scaled_font_metric (f, m);
- scaled_fonts_ = scm_acons (key, val, scaled_fonts_);
- f = unsmob_metrics (val);
- scm_gc_unprotect_object (val);
- }
+ pango_font_description_free (description);
+
+ sizes = scm_acons (size_key, fm->self_scm (), sizes);
+ scm_hash_set_x (table, descr, sizes);