diff --git a/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/Markup.java b/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/Markup.java index 133c20a32..6137f1326 100644 --- a/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/Markup.java +++ b/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/Markup.java @@ -399,6 +399,9 @@ public class Markup { if (string.startsWith("em")) { return f * actualFontSize; } + if (string.startsWith("%")) { + return f * actualFontSize / 100; + } // one ex is the x-height of a font (x-height is usually about half the // font-size) if (string.startsWith("ex")) { diff --git a/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/simpleparser/FactoryProperties.java b/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/simpleparser/FactoryProperties.java index dd1d9f3d4..a8a89b93d 100644 --- a/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/simpleparser/FactoryProperties.java +++ b/fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/simpleparser/FactoryProperties.java @@ -389,8 +389,13 @@ public class FactoryProperties { h.put("b", null); } else if (key.equals(Markup.CSS_KEY_TEXTDECORATION)) { String ss = prop.getProperty(key).trim().toLowerCase(); - if (ss.equals(Markup.CSS_VALUE_UNDERLINE)) + if (ss.equals(Markup.CSS_VALUE_UNDERLINE)) { h.put("u", null); + } else if (ss.equals(Markup.CSS_VALUE_LINETHROUGH)) { + h.put("s", null); + } else { + h.put(key, ss); + } } else if (key.equals(Markup.CSS_KEY_COLOR)) { Color c = Markup.decodeColor(prop.getProperty(key)); if (c != null) {