aboutsummaryrefslogtreecommitdiff
path: root/src/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/main')
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/DocumentToHtml.java2
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/styles/StyleMap.java8
-rw-r--r--src/main/java/org/zwobble/mammoth/internal/styles/StyleMapBuilder.java2
3 files changed, 10 insertions, 2 deletions
diff --git a/src/main/java/org/zwobble/mammoth/internal/DocumentToHtml.java b/src/main/java/org/zwobble/mammoth/internal/DocumentToHtml.java
index 5270ea3..11869e0 100644
--- a/src/main/java/org/zwobble/mammoth/internal/DocumentToHtml.java
+++ b/src/main/java/org/zwobble/mammoth/internal/DocumentToHtml.java
@@ -125,7 +125,7 @@ public class DocumentToHtml {
nodes = list(Html.collapsibleElement("sup", nodes));
}
if (run.isItalic()) {
- nodes = list(Html.collapsibleElement("em", nodes));
+ nodes = styleMap.getItalic().orElse(HtmlPath.collapsibleElement("em")).wrap(nodes);
}
if (run.isBold()) {
nodes = styleMap.getBold().orElse(HtmlPath.collapsibleElement("strong")).wrap(nodes);
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/StyleMap.java b/src/main/java/org/zwobble/mammoth/internal/styles/StyleMap.java
index 2a790f0..537b347 100644
--- a/src/main/java/org/zwobble/mammoth/internal/styles/StyleMap.java
+++ b/src/main/java/org/zwobble/mammoth/internal/styles/StyleMap.java
@@ -17,6 +17,7 @@ public class StyleMap {
public static final StyleMap EMPTY = new StyleMapBuilder().build();
private final Optional<HtmlPath> bold;
+ private final Optional<HtmlPath> italic;
private final Optional<HtmlPath> underline;
private final Optional<HtmlPath> strikethrough;
private final List<StyleMapping<Paragraph>> paragraphStyles;
@@ -24,12 +25,14 @@ public class StyleMap {
public StyleMap(
Optional<HtmlPath> bold,
+ Optional<HtmlPath> italic,
Optional<HtmlPath> underline,
Optional<HtmlPath> strikethrough,
List<StyleMapping<Paragraph>> paragraphStyles,
List<StyleMapping<Run>> runStyles)
{
this.bold = bold;
+ this.italic = italic;
this.underline = underline;
this.strikethrough = strikethrough;
this.paragraphStyles = paragraphStyles;
@@ -40,6 +43,7 @@ public class StyleMap {
// TODO: add appropriate tests
return new StyleMap(
MammothOptionals.first(styleMap.bold, bold),
+ MammothOptionals.first(styleMap.italic, italic),
MammothOptionals.first(styleMap.underline, underline),
MammothOptionals.first(styleMap.strikethrough, strikethrough),
MammothLists.concat(styleMap.paragraphStyles, paragraphStyles),
@@ -50,6 +54,10 @@ public class StyleMap {
return bold;
}
+ public Optional<HtmlPath> getItalic() {
+ return italic;
+ }
+
public Optional<HtmlPath> getUnderline() {
return underline;
}
diff --git a/src/main/java/org/zwobble/mammoth/internal/styles/StyleMapBuilder.java b/src/main/java/org/zwobble/mammoth/internal/styles/StyleMapBuilder.java
index ab024a9..34a72ba 100644
--- a/src/main/java/org/zwobble/mammoth/internal/styles/StyleMapBuilder.java
+++ b/src/main/java/org/zwobble/mammoth/internal/styles/StyleMapBuilder.java
@@ -52,6 +52,6 @@ public class StyleMapBuilder {
}
public StyleMap build() {
- return new StyleMap(bold, underline, strikethrough, paragraphStyles.build(), runStyles.build());
+ return new StyleMap(bold, italic, underline, strikethrough, paragraphStyles.build(), runStyles.build());
}
}