use of com.xenoage.zong.desktop.io.musicxml.in.MusicXmlScoreDocFileInput in project Zong by Xenoage.
the class VisualHtmlReport method renderScore.
/**
* Renders the given score into an image file.
*/
private void renderScore(File scoreFile) throws IOException {
ScoreDoc doc = DocumentIO.read(scoreFile, new MusicXmlScoreDocFileInput());
File pngFile = new File(new File(dirReport, appDir), scoreFile.getName() + ".png");
DocumentIO.write(doc, pngFile, new PngScoreDocFileOutput());
cropScoreImage(pngFile);
}
use of com.xenoage.zong.desktop.io.musicxml.in.MusicXmlScoreDocFileInput in project Zong by Xenoage.
the class MusicXmlMassTest method testFile.
// */
private boolean testFile(File file) {
try {
// Load the file
// TIDY
ScoreDocFactory.setErrorLayoutEnabled(false);
ScoreDoc score = new MusicXmlScoreDocFileInput().read(new JseInputStream(file), file.getAbsolutePath());
// TIDY
ScoreDocFactory.setErrorLayoutEnabled(true);
// Check layout of loaded file
if (checkLayout) {
checkLayout(score, file.getName());
}
// Save it as MusicXML
File mxlSavedFile = getTempOutputPath(file, "-saved.mxl");
if (saveAsMxl) {
// new MusicXMLScoreDocFileOutput().write(score, new FileOutputStream(mxlSavedFile), mxlSavedFile);
}
// Save it as PDF
if (saveAsPdf) {
File pdfFile = getTempOutputPath(file, ".pdf");
new PdfScoreDocFileOutput().write(score, 0, new JseOutputStream(pdfFile));
}
// Save it as MIDI
if (saveAsMid) {
File midFile = getTempOutputPath(file, ".mid");
new MidiScoreDocFileOutput().write(score, 0, new JseOutputStream(midFile));
}
// Load it from saved MusicXML
if (loadFromSavedMxl) {
// TODO
}
// Success
System.out.print("OK: " + file.toString().substring(dir.length()) + " (" + score.getScore().getInfo().getTitle() + ")");
@SuppressWarnings("unchecked") List<String> errorMessages = (List<String>) score.getScore().getMetaData().get("mxlerrors");
if (errorMessages != null)
System.out.print(" ! " + errorMessages.size() + " warning(s)");
System.out.println();
return true;
} catch (Throwable ex) {
ex.printStackTrace();
// fail("Failed to load file: " + file);
System.out.println("fail: " + file.toString().substring(dir.length()));
return false;
}
}
use of com.xenoage.zong.desktop.io.musicxml.in.MusicXmlScoreDocFileInput in project Zong by Xenoage.
the class LayoutTest method getScoreFrameLayoutOrException.
default ScoreFrameLayout getScoreFrameLayoutOrException() throws Exception {
Base base = (Base) this;
String filepath = Base.dirPath + base.getFileName();
ScoreDoc doc = new MusicXmlScoreDocFileInput().read(jsePlatformUtils().openFile(filepath), filepath);
ScoreLayout layout = new ScoreLayouter(doc, targetA4()).createScoreLayout();
return layout.getScoreFrameLayout(0);
}
use of com.xenoage.zong.desktop.io.musicxml.in.MusicXmlScoreDocFileInput in project Zong by Xenoage.
the class MinimalDemo method main.
public static void main(String... args) throws Exception {
// initialize platform-dependent utilities, including I/O.
// the app name is required for the working directory
JseZongPlatformUtils.init(appName);
for (int i = 0; i < 1000; i++) {
// load MusicXML file
File inFile = new File("scores/BeetAnGeSample.xml");
ScoreDoc doc = DocumentIO.read(inFile, new MusicXmlScoreDocFileInput());
// convert to PDF
File outFile = new File("demo.pdf");
DocumentIO.write(doc, outFile, new PdfScoreDocFileOutput());
// finished. open the PDF file.
// Desktop.getDesktop().open(outFile);
System.out.println(i);
}
}
use of com.xenoage.zong.desktop.io.musicxml.in.MusicXmlScoreDocFileInput in project Zong by Xenoage.
the class Content method loadScore.
/**
* Loads the MusicXML score from the given file path.
*/
public void loadScore(String filePath) {
try {
ScoreDoc scoreDoc = DocumentIO.read(new File(filePath), new MusicXmlScoreDocFileInput());
loadScore(scoreDoc);
} catch (Exception ex) {
Err.handle(Report.Companion.error(ex));
}
}
Aggregations