Browse Source

REPORT-33032 无插件PDF导出-HTML解析:font-size 支持单位 %,text-decoration 支持line-through值

release/10.0
Hugh.C 5 years ago
parent
commit
49b931e8ca
  1. 3
      fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/Markup.java
  2. 7
      fine-itext/src/main/java/com/fr/third/v2/lowagie/text/html/simpleparser/FactoryProperties.java

3
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")) { if (string.startsWith("em")) {
return f * actualFontSize; 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 // one ex is the x-height of a font (x-height is usually about half the
// font-size) // font-size)
if (string.startsWith("ex")) { if (string.startsWith("ex")) {

7
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); h.put("b", null);
} else if (key.equals(Markup.CSS_KEY_TEXTDECORATION)) { } else if (key.equals(Markup.CSS_KEY_TEXTDECORATION)) {
String ss = prop.getProperty(key).trim().toLowerCase(); 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); 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)) { } else if (key.equals(Markup.CSS_KEY_COLOR)) {
Color c = Markup.decodeColor(prop.getProperty(key)); Color c = Markup.decodeColor(prop.getProperty(key));
if (c != null) { if (c != null) {

Loading…
Cancel
Save