diff options
| author | Michael Williamson <mike@zwobble.org> | 2022-08-31 21:46:07 +0100 |
|---|---|---|
| committer | Michael Williamson <mike@zwobble.org> | 2022-08-31 21:46:07 +0100 |
| commit | b28d0c121cf4d2751610522d5d0b106b4fba911f (patch) | |
| tree | 79e680a725362719011ed4c0839cbbc4155afe31 /src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java | |
| parent | 3dd00b507a05d912082277ffcb0cbecef9431445 (diff) | |
Extract notion of InternalImageConverter
Diffstat (limited to 'src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java')
| -rw-r--r-- | src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java | 43 |
1 files changed, 9 insertions, 34 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java b/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java index 0f5a066..bc1c75b 100644 --- a/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java +++ b/src/main/java/org/zwobble/mammoth/internal/conversion/DocumentToHtml.java @@ -1,6 +1,6 @@ package org.zwobble.mammoth.internal.conversion; -import org.zwobble.mammoth.images.ImageConverter; +import org.zwobble.mammoth.internal.InternalImageConverter; import org.zwobble.mammoth.internal.documents.*; import org.zwobble.mammoth.internal.html.Html; import org.zwobble.mammoth.internal.html.HtmlNode; @@ -11,16 +11,13 @@ import org.zwobble.mammoth.internal.util.Lists; import org.zwobble.mammoth.internal.util.Maps; import java.io.IOException; -import java.io.InputStream; import java.util.*; import java.util.function.Supplier; import static org.zwobble.mammoth.internal.util.Casts.tryCast; import static org.zwobble.mammoth.internal.util.Iterables.findIndex; import static org.zwobble.mammoth.internal.util.Lists.*; -import static org.zwobble.mammoth.internal.util.Maps.mutableMap; -import static org.zwobble.mammoth.internal.util.Maps.lookup; -import static org.zwobble.mammoth.internal.util.Maps.map; +import static org.zwobble.mammoth.internal.util.Maps.*; public class DocumentToHtml { public static InternalResult<List<HtmlNode>> convertToHtml(Document document, DocumentToHtmlOptions options) { @@ -57,7 +54,7 @@ public class DocumentToHtml { private final String idPrefix; private final boolean preserveEmptyParagraphs; private final StyleMap styleMap; - private final ImageConverter.ImgElement imageConverter; + private final InternalImageConverter imageConverter; private final Map<String, Comment> comments; private final List<NoteReference> noteReferences = new ArrayList<>(); private final List<ReferencedComment> referencedComments = new ArrayList<>(); @@ -334,34 +331,12 @@ public class DocumentToHtml { @Override public List<HtmlNode> visit(Image image, Context context) { // TODO: custom image handlers - // TODO: handle empty content type - return image.getContentType() - .map(contentType -> { - try { - Map<String, String> attributes = new HashMap<>(imageConverter.convert(new org.zwobble.mammoth.images.Image() { - @Override - public Optional<String> getAltText() { - return image.getAltText(); - } - - @Override - public String getContentType() { - return contentType; - } - - @Override - public InputStream getInputStream() throws IOException { - return image.open(); - } - })); - image.getAltText().ifPresent(altText -> attributes.put("alt", altText)); - return list(Html.element("img", attributes)); - } catch (IOException exception) { - warnings.add(exception.getMessage()); - return Lists.<HtmlNode>list(); - } - }) - .orElse(list()); + try { + return imageConverter.convert(image); + } catch (IOException exception) { + warnings.add(exception.getMessage()); + return Lists.<HtmlNode>list(); + } } } |
