Open Document Format made easy using pure JavaScript and Node.js
Install simple-odf using npm
:
npm install --save simple-odf
Create your first document.
const simpleOdf = require('simple-odf');
const document = new simpleOdf.TextDocument();
const body = document.getBody();
const image = body.addParagraph().addImage('/home/homer/myself.png');
image.getStyle().setAnchorType(simpleOdf.AnchorType.AsChar);
image.getStyle().setSize(29.4, 36.5);
body.addHeading('Welcome to simple-odf');
const p1 = body.addParagraph('The quick, brown fox jumps over a lazy dog.');
p1.addText('\nThe five boxing wizards jump quickly.\n\n');
p1.addHyperlink('Visit me', 'http://example.org/');
const style1 = new simpleOdf.ParagraphStyle();
// text formatting
style1.setColor(simpleOdf.Color.fromRgb(255, 0, 0));
style1.setFontSize(20);
style1.setTextTransformation(simpleOdf.TextTransformation.Uppercase);
style1.setTypeface(simpleOdf.Typeface.Bold);
// paragraph formatting
style1.setHorizontalAlignment(simpleOdf.HorizontalAlignment.Center);
style1.setPageBreakBefore();
style1.setKeepTogether();
p1.setStyle(style1);
// font usage
document.getFontFaceDeclarations().create('Open Sans', 'Open Sans', simpleOdf.FontPitch.Variable);
const style2 = new simpleOdf.ParagraphStyle();
style2.setFontName('Open Sans');
const p2 = body.addParagraph('It always seems impossible until it\'s done.');
p2.setStyle(style2);
body.addHeading('Credits', 2);
body.addParagraph('This was quite easy. Do you want to know why?');
const list = body.addList();
list.addItem('one-liner setup');
list.addItem('just write like you would do in a full-blown editor');
document.saveFlat('/home/homer/My_first_document.fodf');
See the examples for more details on how to use the library.
Learn more about the OASIS Open Document Format.
If you want to contribute to simple-odf, you are very welcome. Send issues and pull requests with your ideas.
Before submitting a pull request, please make sure the following is done...
-
Fork the repo and create your branch from
master
. A guide on how to fork a repository: https://help.github.com/articles/fork-a-repo/Open terminal and type:
git clone https://github.com/<your_username>/simple-odf cd simple-odf git checkout -b my_branch
-
simple-odf uses npm for running development scripts. If you haven't already done so, please install npm.
-
Run
npm install
.npm install
-
If you've added code, add tests. You can use watch mode that continuously observes changed files to make your life easier.
npm test -- --watch
By contributing to simple-odf, you agree that your contributions will be licensed under its MIT license.