zoukankan      html  css  js  c++  java
  • 让Flying saucer支持font定义

    在wangEditor里给某段字体加上颜色后,在生成的PDF里无法体现出来,只好打开flying saucer的源码debug,发现XhtmlNamespaceHandler类中没有对font元素的处理,于是依样画瓢:


    public String getNonCssStyling(Element e) {

        if (e.getNodeName().equals("table")) {

            return applyTableStyles(e);            

        } else if (e.getNodeName().equals("td") || e.getNodeName().equals("th")) {

            return applyTableCellStyles(e);

        } else if (e.getNodeName().equals("tr")) {

            return applyTableRowStyles(e);

        } else if (e.getNodeName().equals("img")) {

            return applyImgStyles(e);

        } else if (e.getNodeName().equals("p") || e.getNodeName().equals("div")) {

            return applyBlockAlign(e);

        }else if(e.getNodeName().equalsIgnoreCase("font")){

            return applyFontStyle(e);

        }

        return "";

    }


    然后加上下面的方法:


    private String applyFontStyle(Element e) {

            StringBuffer style = new StringBuffer();

            String s;

            s = getAttribute(e, "color");

            if (s != null) {

                s = s.toLowerCase().trim();

                style.append("color: ");

                style.append(s);

                style.append(";");

            }

            s = getAttribute(e, "size");

            if (s != null) {

                s = s.toLowerCase().trim();

                if(!s.endsWith("px")){

                    s = s + "px";

                }

                style.append("font-size: ");

                style.append(s);

                style.append(";");

            }

            return style.toString();

        }


  • 相关阅读:
    Saltstack module gem 详解
    Saltstack module freezer 详解
    Saltstack module firewalld 详解
    Saltstack module file 详解
    Saltstack module event 详解
    Saltstack module etcd 详解
    Saltstack module environ 详解
    Saltstack module drbd 详解
    Saltstack module dnsutil 详解
    获取主页_剥离百度
  • 原文地址:https://www.cnblogs.com/xiuquan/p/6103167.html
Copyright © 2011-2022 走看看