lilypond-devel
[Top][All Lists]
Advanced

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

GSoC Proposal - SVG Export


From: Étienne Beaulé
Subject: GSoC Proposal - SVG Export
Date: Fri, 30 Nov 2018 22:39:24 -0500

Hello all!

I’m Étienne Beaulé and I’ve been making some changes to LilyPond. I am also the 
maintainer of the MediaWiki Score extension which allows embedded LilyPond on 
Wikipedia. I’m currently a bachelor student at the Université de Montréal 
studying computer science and mathematics, and Google Summer of Code caught my 
eye. I’d be interested in doing a project if a mentor is available.

# Improving SVG score output

## Summary

Scalable Vector Graphics (SVG) is a vector graphics format designed for use on 
the internet. LilyPond (LY) is a program which translates musical notation 
syntax into a graphics format, such as SVG. This format is important for web 
publishing, and as a vector format, is advantageous over Portable Network 
Graphics (PNG) file, of which is _de facto_ used in this application.

LY already has SVG output, yet is somewhat broken in many factors. Namely in 
font handling with broken sky-lining #3778 and the use of musical symbols as 
text. Development in fixing these problems may offer changes in other backends. 
This project will focus on the use of musical symbols in SVG files and the 
positioning of text. I have previously submitted patches for text-positioning 
bugs.

## Deliverables

* Self-contained musical SVG files
* Functioning text sky-lining in SVG
* Grouping of text for better placement in SVG

## Timeline

_This is the hard part… Non-comprehensive_

* Analysis of incompatibilities between PostScript (PS) and SVG output
  Important to have a grip on this to not introduce bugs and to keep 
commonalities between backends
* Deprecation of SVG fonts - embed font into SVG

— —

* Reduce size of SVG by enumerating used glyphs
* Merge glyph functions for text and symbols

— —

* Implement use of `<tspan>` tags and Cascading Style Sheets (CSS) for text 
handling
  * Will require modification of PS backends
  * Fix Horizontal Spacing of text
* Fix SVG text sky-lining in conjunction with character size / spacing 
calculations

Thoughts?

Étienne


reply via email to

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