lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: SVG backend: On-the-fly conversion of Emmentaler/Aybabtu glyphs to p


From: pnorcks
Subject: Re: SVG backend: On-the-fly conversion of Emmentaler/Aybabtu glyphs to paths
Date: Fri, 24 Jul 2009 23:30:00 +0000

Reviewers: joeneeman,


http://codereview.appspot.com/96083/diff/1/8
File lily/pango-font.cc (right):

http://codereview.appspot.com/96083/diff/1/8#newcode351
Line 351: // options.
On 2009/07/21 18:43:10, joeneeman wrote:
Could you please have a look at this? (after applying this patch, if
you
prefer). The more special cases we add for different backends, the
messier this
gets.

Hopefully the revised conditional tests look before.  Thanks for
pointing this out.

http://codereview.appspot.com/96083/diff/1/9
File lily/text-interface.cc (right):

http://codereview.appspot.com/96083/diff/1/9#newcode80
Line 80: if (ly_symbol2string (encoding) == "latin1")
On 2009/07/21 18:43:10, joeneeman wrote:
isn't there some possibility that we will have an encoding other than
"latin1",
"fetaNumber" or "fetaDynamic"?

Yes, certainly.

I created lists for the music font encodings and text font encodings
(scm/font.scm) and the new code searches through the music font encoding
list to look for a match.

http://codereview.appspot.com/96083/diff/1/12
File scm/output-svg.scm (right):

http://codereview.appspot.com/96083/diff/1/12#newcode184
Line 184: (make-regexp (string-append "glyph-name=\"("
On 2009/07/21 18:43:10, joeneeman wrote:
I think it would be helpful if you gave an example or 2 of the sort of
string
you expect to match here. I'm a bit worried also about the fact that
you require
the attributes to be in a specific order.

The new code uses a generalized regular expression that will match a
<glyph> element with attributes in any order.

The code is slower now, I think due to the complexity of the new regular
expression.  It might be a better idea if I rewrite this in C++
eventually.

Description:
SVG backend: On-the-fly conversion of Emmentaler/Aybabtu glyphs to paths

- An API change for the word_stencil () function.  This serves to
filter all Emmentaler/Aybabtu glyphs that pass through the
text-interface.

- As a result, the socket backend will only receive "utf-8-string", and
the
svg, scm, and null backends will receive a combination of "utf-8-string"
and
"glyph-string".  The ps and eps backends remain unchanged.

- The SVG fonts are found, cached, and used to extract the appropriate
glyphs for the stencil in question.

Please review this at http://codereview.appspot.com/96083

Affected files:
  M lily/font-metric-scheme.cc
  M lily/font-metric.cc
  M lily/include/font-metric.hh
  M lily/include/modified-font-metric.hh
  M lily/include/pango-font.hh
  M lily/modified-font-metric.cc
  M lily/pango-font.cc
  M lily/text-interface.cc
  M scm/font.scm
  M scm/framework-svg.scm
  M scm/lily-library.scm
  M scm/output-ps.scm
  M scm/output-svg.scm






reply via email to

[Prev in Thread] Current Thread [Next in Thread]