rism-digital / verovio

🎵 Music notation engraving library for MEI with MusicXML and Humdrum support and various toolkits (JavaScript, Python)
https://www.verovio.org
GNU Lesser General Public License v3.0
661 stars 183 forks source link

Some figured bass special characters turn into "?" or disappear (Python) #3211

Closed CorvusTheComposer closed 1 year ago

CorvusTheComposer commented 1 year ago

Describe the problem Some special characters in figured bass, such as suffixes like the backslash, turn into "?" characters or disappear completely when reading from MusicXML in the version of Verovio distributed for Python.

To Reproduce Steps to reproduce the behavior:

  1. Download the provided TestFiles.zip below and extract it in a suitable location.
  2. Run TestCode.py on a Python 3.10 installation with the "verovio" module installed.
  3. See generated "TestFile.mei" and "TestFile.svg" for incorrectly converted figured bass in bar 4.

Expected behavior The figured bass in bar 4.3 is supposed to read "6\", but reads "6?" instead.

Note: online tools using the JavaScript version of Verovio convert the figured bass correctly (e.g. MEI-Friend).

Input data See "TestFile.musicxml" generated from MuseScore 3.6.2.

Verovio information

Environment information

Screenshots Screenshot of the incorrectly converted figured bass taken from the SVG file generated by the test code: img1

Screenshot of the correct conversion taken from the online tool MEI-Friend which uses the JavaScript version of Verovio: img2

Test Files TestFiles.zip

lpugin commented 1 year ago

This is likely be a font issue. How did you install the Python version of Verovio? From PyPi?

CorvusTheComposer commented 1 year ago

This is likely be a font issue. How did you install the Python version of Verovio? From PyPi?

I initially installed it through PyCharm's built in feature to search and install modules, but when I install it through PyPi and use the normal Python terminal I see the same results.

ahankinson commented 1 year ago

If I look at the resulting SVG in the macOS file preview, Firefox, and Safari it renders correctly. If I view it in Brave or Chrome it doesn't.

Also it's showing up as a 6 with a combining character -- maybe Chrome-based browsers don't do the combining characters correctly?

image
CorvusTheComposer commented 1 year ago

If I look at the resulting SVG in the macOS file preview, Firefox, and Safari it renders correctly. If I view it in Brave or Chrome it doesn't.

Also it's showing up as a 6 with a combining character -- maybe Chrome-based browsers don't do the combining characters correctly?

image

That is interesting because I have been viewing the SVGs on Firefox. I should also add that it's not just an SVG rendering issue, but that the character in question turns into a "?" in the resulting .mei file as well. Might it be a Windows problem?

lpugin commented 1 year ago

Could you make a minimal example (1 measure) and post both the MusicXML and the MEI file?

CorvusTheComposer commented 1 year ago

Absolutely. Within this ZIP are MinimalFile.musicxml, generated from MuseScore 4, and MinimalFile.mei generated with Verovio on Python from the MusicXML. MinimalTests.zip

Note the flat on the third quarter is generated correctly. The problem seems to mainly concern the backslash suffix.

craigsapp commented 1 year ago

The problem is the font metrics for the overlay accent character. Either the font does not have the correct font metrics for the solidus (seems most likely), or the rendering software does not know how to use the font metrics properly.

The main solution would be to find a font that displays it properly. When you display on various operating systems and browsers, they are all using a font substitution for "Times" (using a knock-off of the copyrighted Times font of Adobe) in the SVG image that is different for every browser/os combination.

The question mark means that the font does not have the solidus code point at all, and it is being annoying by showing a question mark (sometimes inside of a box) to alert you to the fact that it does not know what to do with the undefined character.

Preferably the MEI data would use a SMuFL font for figured bass in order to display correctly across multiple OSes and browers. This would embed the font used to display the raised-6 symbol into the SVG image, and font substitution would not be needed across multiple platforms. In this case the musical font symbols would be embedded into the SVG image.

Here is the raised-6 symbol as a single SMuFL character:

<f>&#xea5c;</f>

or

         <f>        
          <symbol glyph.auth="smufl" glyph.name="figbass6Raised" />
         </f>

The second case using <symbol> does not seem supported by verovio currently, but it would be nice to add.

View MEI sample data used to render the example below ```xml </titleStmt> <pubStmt /> </fileDesc> <encodingDesc> <appInfo> <application isodate="2023-01-18T04:15:44" version="3.15.0-dev-244e188-dirty"> <name>Verovio</name> <p>Transcoded from Humdrum</p> </application> </appInfo> </encodingDesc> <workList> <work> <title /> </work> </workList> </meiHead> <music> <body> <mdiv xml:id="mpzg7au"> <score xml:id="s1i6sdog"> <scoreDef xml:id="s1hoax9p"> <staffGrp xml:id="s1yi3nqk"> <staffDef xml:id="staffdef-L1F1" n="1" lines="5"> <clef xml:id="clef-L3F1" shape="G" line="2" /> <meterSig xml:id="metersig-L2F1" count="4" unit="4" /> </staffDef> </staffGrp> </scoreDef> <section xml:id="section-L1F1"> <measure xml:id="measure-L1"> <harm xml:id="harm-L6F2" staff="1" tstamp="1.000000"> <fb xml:id="fb-L6F2"> <f xml:id="f-L6F2"> <symbol xml:id="sqq4e3y" glyph.auth="smufl" glyph.name="figbass6Raised" /> </f> </fb> </harm> <harm xml:id="harm-L7F2" staff="1" tstamp="3.000000"> <fb xml:id="fb-L7F2"> <f xml:id="f-L7F2"></f> </fb> </harm> <staff xml:id="staff-L1F1" n="1"> <layer xml:id="layer-L1F1N1" n="1"> <note xml:id="note-L6F1" dur="2" oct="4" pname="c" accid.ges="n" /> <note xml:id="note-L7F1" dur="2" oct="4" pname="c" accid.ges="n" /> </layer> </staff> <dir xml:id="dir-L5F1" place="below" staff="1" tstamp="1.000000"> <symbol xml:id="sqq4e3y" glyph.auth="smufl" glyph.name="figbass6Raised" /> </dir> </measure> </section> </score> </mdiv> </body> </music> </mei> ``` </details> <p>Here is the verovio rendering displayed in Chrome in MacOS:</p> <img width="436" alt="Screenshot 2023-01-18 at 4 44 19 AM" src="https://user-images.githubusercontent.com/3487289/213174731-01a90dff-c96b-4b28-b837-ca3bf7a06f01.png"> <p>The <code>f/symbol</code> is not showing on the first note, so I added a text direction on that note which does allow the display of the symbol element.</p> <details> <summary> Click to view SVG image text </summary> ```xml <svg width="440px" height="283px" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:mei="http://www.music-encoding.org/ns/mei" overflow="visible"> <desc>Engraved by Verovio 3.15.0-dev-244e188-dirty</desc> <defs> <symbol id="E050-9j7c9t" viewBox="0 0 1000 1000" overflow="inherit"> <path transform="scale(1,-1)" d="M123 -513c0 66 44 123 114 123c75 0 116 -57 116 -111c0 -64 -47 -104 -94 -112c-3 0 -5 -1 -5 -3c0 -1 2 -2 3 -3c2 0 23 -5 47 -5c101 0 155 55 155 159c0 53 -12 123 -31 219c-23 -4 -50 -7 -79 -7c-186 0 -349 147 -349 334c0 200 126 322 217 406c21 17 73 70 74 71 c-17 112 -22 161 -22 215c0 84 18 212 82 288c33 39 64 51 71 51c18 0 47 -35 71 -86c16 -36 44 -110 44 -201c0 -159 -73 -284 -178 -395c8 -56 18 -115 28 -175c146 0 253 -102 253 -253c0 -103 -73 -205 -171 -237c6 -39 12 -69 15 -89c10 -57 16 -102 16 -141 c0 -63 -14 -129 -68 -167c-36 -22 -77 -34 -124 -34c-135 0 -185 87 -185 153zM332 822c-8 -31 -11 -65 -11 -102c0 -42 5 -81 11 -121c69 68 146 146 146 250c0 70 -24 118 -39 118c-52 0 -98 -105 -107 -145zM420 -206l-58 329c-58 -14 -104 -63 -104 -124 c0 -49 22 -75 61 -99c12 -8 22 -13 22 -22s-9 -13 -17 -13c-80 0 -135 96 -135 166c0 94 62 190 153 217c-7 41 -14 88 -23 142c-15 -15 -31 -29 -48 -44c-88 -76 -174 -185 -174 -307c0 -151 122 -251 265 -251c19 0 38 2 58 6zM562 -21c0 89 -65 150 -155 150 c7 -44 34 -203 55 -323c71 29 100 102 100 173z" /> </symbol> <symbol id="E084-9j7c9t" viewBox="0 0 1000 1000" overflow="inherit"> <path transform="scale(1,-1)" d="M208 -127h-172c-9 0 -11 6 -11 6s-6 11 -10 18c-1 2 -1 4 -1 6c0 6 3 11 3 11c26 37 56 87 82 168s31 155 31 155c1 6 6 12 14 12h148c4 0 8 -2 10 -4l22 -22c1 -1 3 -5 3 -10c0 -4 -1 -9 -5 -14c-118 -158 -229 -278 -229 -278h115v82c0 4 1 8 4 11l91 83c2 2 6 3 9 4 c2 0 5 -1 7 -2l12 -6c5 -2 8 -7 8 -13v-159h89c8 0 14 -7 14 -14v-19c0 -8 -6 -15 -14 -15h-89v-74h89c8 0 14 -6 14 -14v-19c0 -8 -6 -14 -14 -14h-303c-7 0 -14 6 -14 14v19c0 8 7 14 14 14h83v74z" /> </symbol> <symbol id="E0A3-9j7c9t" viewBox="0 0 1000 1000" overflow="inherit"> <path transform="scale(1,-1)" d="M213 132c62 0 112 -33 112 -92c0 -88 -109 -173 -213 -173c-81 0 -112 48 -112 91c0 93 116 174 213 174zM75 -86c46 0 215 85 215 135c0 22 -16 36 -40 36c-47 0 -215 -86 -215 -135c0 -9 7 -36 40 -36z" /> </symbol> </defs> <style type="text/css">g.page-margin{font-family:Times;} g.ending, g.fing, g.reh, g.tempo{font-weight:bold;} g.dir, g.dynam, g.mNum{font-style:italic;} g.label{font-weight:normal;}</style> <svg class="definition-scale" color="black" viewBox="0 0 5110 3280"> <g class="page-margin" transform="translate(300, 1000)"> <g id="mpzg7au" class="mdiv pageMilestone" /> <g id="s1i6sdog" class="score pageMilestone" /> <g id="s9q2840" class="system"> <g id="section-L1F1" class="section systemMilestone" /> <g id="measure-L1" class="measure"> <g id="harm-L6F2" class="harm"> <g id="fb-L6F2" class="fb"> <text x="1444" y="1885" font-size="0px"> <tspan id="f-L6F2" class="f" /> </text> </g> </g> <g id="harm-L7F2" class="harm"> <g id="fb-L7F2" class="fb"> <text x="3025" y="1885" font-size="0px"> <tspan id="f-L7F2" class="f"> <tspan id="t40860d" class="text"> <tspan font-family="Leipzig" font-size="720px" class="text" x="3025" y="1885"></tspan> </tspan> </tspan> </text> </g> </g> <g id="staff-L1F1" class="staff"> <path d="M0 540 L4610 540" stroke="currentColor" stroke-width="10" /> <path d="M0 720 L4610 720" stroke="currentColor" stroke-width="10" /> <path d="M0 900 L4610 900" stroke="currentColor" stroke-width="10" /> <path d="M0 1080 L4610 1080" stroke="currentColor" stroke-width="10" /> <path d="M0 1260 L4610 1260" stroke="currentColor" stroke-width="10" /> <g id="cvo2at1" class="clef"> <use xlink:href="#E050-9j7c9t" x="135" y="1080" height="720px" width="720px" /> </g> <g id="k5gt4qq" class="keySig" /> <g id="mgs0njq" class="meterSig"> <use xlink:href="#E084-9j7c9t" x="765" y="720" height="720px" width="720px" /> <use xlink:href="#E084-9j7c9t" x="765" y="1080" height="720px" width="720px" /> </g> <g class="ledgerLines below"> <path d="M1396 1440 L1726 1440" stroke="currentColor" stroke-width="22" /> <path d="M2977 1440 L3307 1440" stroke="currentColor" stroke-width="22" /> </g> <g id="layer-L1F1N1" class="layer"> <g id="note-L6F1" class="note"> <g class="notehead"> <use xlink:href="#E0A3-9j7c9t" x="1444" y="1440" height="720px" width="720px" /> </g> <g id="s19u68n1" class="stem"> <path d="M1668 1412 L1668 810" stroke="currentColor" stroke-width="18" /> </g> <g id="a1uae32r" class="accid" /> </g> <g id="note-L7F1" class="note"> <g class="notehead"> <use xlink:href="#E0A3-9j7c9t" x="3025" y="1440" height="720px" width="720px" /> </g> <g id="sjnanyv" class="stem"> <path d="M3249 1412 L3249 810" stroke="currentColor" stroke-width="18" /> </g> <g id="a1nehnbt" class="accid" /> </g> </g> </g> <g id="dir-L5F1" class="dir"> <text x="1444" y="1840" font-size="0px"> <tspan id="sqq4e3y" class="symbol"> <tspan font-family="Leipzig" font-size="720px" font-style="normal" class="text"></tspan> </tspan> </text> </g> <g id="b1azjg0q" class="barLine"> <path d="M4605 540 L4605 1260" stroke="currentColor" stroke-width="10" /> </g> </g> <g id="s1c9zl1b" class="systemMilestoneEnd section-L1F1" /> </g> <g id="pfltqwv" class="pageMilestoneEnd s1i6sdog" /> <g id="p1nenn6i" class="pageMilestoneEnd mpzg7au" /> </g> </svg> <style type="text/css">@font-face { font-family: 'Leipzig'; src: url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2'); font-weight: normal; font-style: normal; }</style> </svg> ``` </details> <p>Here is the SVG image displayed directly on this webpage (not a screen shot):</p> <p><img src="https://user-images.githubusercontent.com/3487289/213177636-d71eb777-6c92-4687-8f38-97e2acb9a987.svg" alt="raised-sixth" /></p> <p>I would expect the above SVG image to display correctly, even when the solidus method of adding the slash does not.</p> <p>At the bottom of the SVG image, is an embedded form of the Leipzig font, starting:</p> <pre><code class="language-svg"> <style type="text/css">@font-face { font-family: 'Leipzig';</code></pre> <p>Then comes a very long line with the font's contents (presumably a subset of Leipzig since it is relatively small, but ideally only the raised-6 code point would be included rather than multiple code points that are not used in the image).</p> <p>Another thing that you can do is provide a font substitution of your own for Times. Here is what I do in plain CSS (outside of the SVG image, but probably works inside of the image and/or embedded in the file with a pointer to an online font (or embedded as a very long string may work as well). In this case I have a separate local TTF file being used for Times in the SVG image:</p> <pre><code class="language-css">@font-face { font-family: "Times"; src: url("../scripts/pdfkit/EBGaramond-Regular.ttf"); font-style: normal; font-weight: normal } @font-face { font-family: "Times"; src: url("../scripts/pdfkit/EBGaramond-Italic.ttf"); font-style: italic; font-weight: normal } @font-face { font-family: "Times"; src: url("../scripts/pdfkit/EBGaramond-Bold.ttf"); font-style: normal; font-weight: bold } @font-face { font-family: "Times"; src: url("../scripts/pdfkit/EBGaramond-BoldItalic.ttf"); font-style: italic; font-weight: bold }</code></pre> <p>You could use a similar local font, or an online source. The font substitution that you use would need to have a similar font metric to Times since the width/height of the text should not change since the SVG image will not adjust the layout of the music to avoid collisions.</p> <p>Here is a list of the fonts which have similar font metrics to Times, so they will likely look good when displayed in the output SVG image from verovio:</p> <p><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html">https://www.learnui.design/blog/times-new-roman-similar-fonts.html</a></p> <ul> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#1-eb-garamond">EB Garamond</a> (more formal)</li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#2-merriweather">Merriweather</a> (modern and versatile)</li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#3-heuristica">Heuristica</a></li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#4-source-serif">Source Serif</a></li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#5-dm-serif-display">DM Serif Display</a> (great for serif headers)</li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#6-pt-serif">PT Serif</a></li> <li><a href="https://www.learnui.design/blog/times-new-roman-similar-fonts.html#7-charis-sil">Charis SIL</a> (modern and distinguished)</li> </ul> </div> </div> <div class="comment"> <div class="user"> <a rel="noreferrer nofollow" target="_blank" href="https://github.com/lpugin"><img src="https://avatars.githubusercontent.com/u/689412?v=4" />lpugin</a> commented <strong> 1 year ago</strong> </div> <div class="markdown-body"> <p>@craigsapp suggestion to use SMuFL glyphs is good. We can look at it.</p> <p>There is still something unclear happening with the UTF-8 encoding, which seems to be a Windows only problem. The conversion of the backslash is failing here: <a href="https://github.com/rism-digital/verovio/blob/eb8a267f922bad918c0b3398d40427e065757387/src/iomusxml.cpp#L4493">https://github.com/rism-digital/verovio/blob/eb8a267f922bad918c0b3398d40427e065757387/src/iomusxml.cpp#L4493</a></p> <p>I tried a fix with <code>u32string</code> is the <code>develop-fix-fb</code> branch <a href="https://github.com/rism-digital/verovio/compare/develop...develop-fix-fb">https://github.com/rism-digital/verovio/compare/develop...develop-fix-fb</a></p> <p>If somebody has a Windows machine and can test it that would be very helpful - I don't think this is something limited to the Python toolkit, so a command line build and comparison of <code>develop</code> and <code>develop-fix-fb</code> would be a good start.</p> </div> </div> <div class="comment"> <div class="user"> <a rel="noreferrer nofollow" target="_blank" href="https://github.com/craigsapp"><img src="https://avatars.githubusercontent.com/u/3487289?v=4" />craigsapp</a> commented <strong> 1 year ago</strong> </div> <div class="markdown-body"> <p>Here is an interesting test:</p> <pre><code class="language-html"><!DOCTYPE html> <html> <head> <title> slashed number test </title> <body> <style> @import url('https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,700;1,400;1,700&display=swap'); @import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,600;1,300;1,600&display=swap'); h1 { font-size: 1rem; padding-bottom: 20px; padding-top: 10px; } </style> <h1> Default (Times)</h1> <div> 1&#x20E5; 2&#x20E5; 3&#x20E5; 4&#x20E5; 5&#x20E5; 6&#x20E5; 7&#x20E5; 8&#x20E5; 9&#x20E5; </div> <h1> EB Garamond </h1> <div style="font-family: EB Garamond" > 1&#x20E5; 2&#x20E5; 3&#x20E5; 4&#x20E5; 5&#x20E5; 6&#x20E5; 7&#x20E5; 8&#x20E5; 9&#x20E5; </div> <h1> Cormorant Garamond</h1> <div style="font-family: Cormorant Garamond" > 1&#x20E5; 2&#x20E5; 3&#x20E5; 4&#x20E5; 5&#x20E5; 6&#x20E5; 7&#x20E5; 8&#x20E5; 9&#x20E5; </div> </body> </html></code></pre> <p>In Firefox (on MacOS) the display is correct for all three cases:</p> <img width="677" alt="Screenshot 2023-01-18 at 11 11 29 AM" src="https://user-images.githubusercontent.com/3487289/213272737-64a47d69-bd61-46eb-b3fa-6511b451dc84.png"> <p>But in Chrome (on MacOS), none of them are correct:</p> <img width="690" alt="Screenshot 2023-01-18 at 11 08 01 AM" src="https://user-images.githubusercontent.com/3487289/213272401-4f432457-76aa-46cd-b491-ebac2fec0dae.png"> <p>So the same font may be rendered properly in one browser and incorrectly in another in the same operating system.</p> <p>The Cormorant Garamond display in Chrome is displaying "no glyph" for the slash, so perhaps none of the three fonts have the reverse solidus overlay character and Firefox takes care of the problem itself while Chrome does not.</p> </div> </div> <div class="page-bar-simple"> </div> <div class="footer"> <ul class="body"> <li>© <script> document.write(new Date().getFullYear()) </script> Githubissues.</li> <li>Githubissues is a development platform for aggregating issues.</li> </ul> </div> <script src="https://cdn.jsdelivr.net/npm/jquery@3.5.1/dist/jquery.min.js"></script> <script src="/githubissues/assets/js.js"></script> <script src="/githubissues/assets/markdown.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/highlight.min.js"></script> <script src="https://cdn.jsdelivr.net/gh/highlightjs/cdn-release@11.4.0/build/languages/go.min.js"></script> <script> hljs.highlightAll(); </script> </body> </html>