file2html
v0.2.0
Published
JS convertor of files to HTML and CSS code
Downloads
342
Maintainers
Readme
file2html
JS convertor of files to HTML and CSS code
Requirements
Supported formats
- [x] Text file2html-text (.txt)
- [x] Images file2html-image (.png, .jpg, .gif, .svg, .ico, .wbmp)
- [x] OOXML Documents file2html-ooxml (.docx)
- [ ] OOXML Presentations (.pptx)
- [ ] OOXML Spreadsheets (.xlsx)
- [x] ODF Text Files file2html-odf (.odt)
- [x] DSV file2html-dsv (.csv, .tsv)
- [x] FictionBook file2html-fiction-book (.fb2)
- [x] EPUB file2html-epub (.epub)
- [ ] DjVu (.djvu, .djv)
- [ ] RTF (.rtf)
- [ ] WCBFF (.doc)
Usage
Installation
> npm i file2html
Installation of required engines for each file type:
> npm i file2html-text file2html-ooxml file2html-image
Check supported formats to decide which engines you need.
Configuration
import * as file2html from 'file2html';
import TextReader from 'file2html-text';
import OOXMLReader from 'file2html-ooxml';
import ImageReader from 'file2html-image';
file2html.config({
readers: [
TextReader,
OOXMLReader,
ImageReader
]
});
File reading
file2html.read({
fileBuffer, // ArrayBuffer
meta // file2html.FileMetaInformation
}).then((file) => {
// file is an instance of file2html.File type
const {styles, content} = file.getData();
// "render" a file content with styles
document.body.innerHTML = styles + content;
});
FileMetaInformation
{
fileType: number; // optional
mimeType: string; // optional
name: string; // optional
size: number; // optional
creator: string; // optional
createdAt: string; // optional
modifiedAt: string; // optional
}
File
{
getMeta () {
// returns object of file2html.FileMetaInformation
}
getData () {
// returns object of file2html.FileData
}
}
FileData
{
meta: file2html.FileMetaInformation;
styles: string; // css styles as a string
content: string; // html markup as a string
}
Showcase
StormFiles
Browser extension, file viewer: