diff options
| author | Michael Williamson <mike@zwobble.org> | 2016-04-17 18:57:29 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2016-04-17 18:58:12 +0100 |
| commit | 52140d52210eda0f25ecab9f89b5c73473e9d8e0 (patch) | |
| tree | cb383edb71e44b8ae7b2b0d0890f13574d1922f0 /dotnet/Mammoth/DocumentConverter.cs | |
| parent | 0f9ef005f063198ea2e16ca36beaead4bd5e3824 (diff) | |
Add CLI for .NET version
Diffstat (limited to 'dotnet/Mammoth/DocumentConverter.cs')
| -rw-r--r-- | dotnet/Mammoth/DocumentConverter.cs | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/dotnet/Mammoth/DocumentConverter.cs b/dotnet/Mammoth/DocumentConverter.cs new file mode 100644 index 0000000..eb8c939 --- /dev/null +++ b/dotnet/Mammoth/DocumentConverter.cs @@ -0,0 +1,57 @@ +using System.IO; +using Mammoth.Couscous; +using Mammoth.Couscous.org.zwobble.mammoth.@internal; +using Mammoth.Couscous.org.zwobble.mammoth.@internal.conversion; + +namespace Mammoth { + public class DocumentConverter { + private readonly DocumentToHtmlOptions options; + + public DocumentConverter() : this(DocumentToHtmlOptions._DEFAULT) { + } + + private DocumentConverter(DocumentToHtmlOptions options) { + this.options = options; + } + + public DocumentConverter IdPrefix(string idPrefix) { + return new DocumentConverter(options.idPrefix(idPrefix)); + } + + public DocumentConverter PreserveEmptyParagraphs() { + return new DocumentConverter(options.preserveEmptyParagraphs()); + } + + public DocumentConverter AddStyleMap(string styleMap) { + return new DocumentConverter(options.addStyleMap(styleMap)); + } + + public DocumentConverter DisableDefaultStyleMap() { + return new DocumentConverter(options.disableDefaultStyleMap()); + } + + public IResult<string> ConvertToHtml(Stream stream) { + return new InternalDocumentConverter(options) + .convertToHtml(ToJava.StreamToInputStream(stream)) + .ToResult(); + } + + public IResult<string> ConvertToHtml(string path) { + return new InternalDocumentConverter(options) + .convertToHtml(new Couscous.java.io.File(path)) + .ToResult(); + } + + public IResult<string> ExtractRawText(Stream stream) { + return new InternalDocumentConverter(options) + .extractRawText(ToJava.StreamToInputStream(stream)) + .ToResult(); + } + + public IResult<string> ExtractRawText(string path) { + return new InternalDocumentConverter(options) + .extractRawText(new Couscous.java.io.File(path)) + .ToResult(); + } + } +} |
