rtf.js
Render RTF documents in HTML. This also includes rendering WMF and EMF images which are often contained in RTF documents.
License
The code of this project is licensed under the MIT license. See the file LICENSE for details.
Using the library
For information on how to use the library see the Getting Started Guide
Live samples:
Dependencies
rtf.js requires:
js-codepage (Apache 2.0 license, included in the rtf.js bundle)
Rendering WMF and EMF images is accomplished by using HTML5's feature.
Rendering RTF documents often requires rendering embedded WMF and EMF images, however rtf.js can be used without wmf.js and emf.js or with just one of them, if rendering such images is not required.
Developing
To develop first install the dependencies using npm install.
Build with watch mode
For development purposes you can start a watch, which will build the project, serve the sample pages on localhost:8080 and automatically recompile and reload the sample page if you make a code change. This can be started with:
$ npm run watch
Building
To build the entire project and create the bundles run:
$ npm run build
Tests
Please run npm run lint first to make sure your code adheres to the style guide and npm run build to build the code to be tested
To run the test suite run:
$ npm run test
To create a new test (type is rtf, emf or wmf):
$ npm run generate-testcase
To regenerate the expected result for an existing test:
$ npm run regenerate-testcase
Code Coverage
To generate code coverage metrics run:
$ npm run coverage
Afterwards you can generate a nice html report in the coverage directory:
$ npm run coverage-html
Warning: creating coverage reports instruments the bundles in the dist directory.
Don't forget to build the project again before committing.
Releasing