VexFlowMusicSheetDrawer.js 2.0 KB

12345678910111213141516171819202122232425262728293031
  1. "use strict";
  2. var VexFlowMusicSheetDrawer_1 = require("../../../../src/MusicalScore/Graphical/VexFlow/VexFlowMusicSheetDrawer");
  3. var GraphicalMusicSheet_1 = require("../../../../src/MusicalScore/Graphical/GraphicalMusicSheet");
  4. var MusicSheetReader_1 = require("../../../../src/MusicalScore/ScoreIO/MusicSheetReader");
  5. var VexFlowMusicSheetCalculator_1 = require("../../../../src/MusicalScore/Graphical/VexFlow/VexFlowMusicSheetCalculator");
  6. var TestUtils_1 = require("../../../Util/TestUtils");
  7. var VexFlowTextMeasurer_1 = require("../../../../src/MusicalScore/Graphical/VexFlow/VexFlowTextMeasurer");
  8. var fraction_1 = require("../../../../src/Common/DataObjects/fraction");
  9. var DrawingEnums_1 = require("../../../../src/MusicalScore/Graphical/DrawingEnums");
  10. describe("VexFlow Music Sheet Drawer", function () {
  11. it(".drawSheet (Clementi pt. 1)", function (done) {
  12. var path = "test/data/MuzioClementi_SonatinaOpus36No1_Part2.xml";
  13. // "test/data/MuzioClementi_SonatinaOpus36No1_Part1.xml";
  14. var score = TestUtils_1.TestUtils.getScore(path);
  15. chai.expect(score).to.not.be.undefined;
  16. var calc = new VexFlowMusicSheetCalculator_1.VexFlowMusicSheetCalculator();
  17. var reader = new MusicSheetReader_1.MusicSheetReader();
  18. var sheet = reader.createMusicSheet(score, path);
  19. var gms = new GraphicalMusicSheet_1.GraphicalMusicSheet(sheet, calc);
  20. gms.Cursors.push(gms.calculateCursorLineAtTimestamp(new fraction_1.Fraction(), DrawingEnums_1.OutlineAndFillStyleEnum.PlaybackCursor));
  21. // Create heading in the test page
  22. var h1 = document.createElement("h1");
  23. h1.textContent = "VexFlowMusicSheetDrawer Output";
  24. document.body.appendChild(h1);
  25. // Create the canvas in the document:
  26. var canvas = document.createElement("canvas");
  27. document.body.appendChild(canvas);
  28. (new VexFlowMusicSheetDrawer_1.VexFlowMusicSheetDrawer(canvas, new VexFlowTextMeasurer_1.VexFlowTextMeasurer())).drawSheet(gms);
  29. done();
  30. });
  31. });