java实现word转pdf-附全码

xiaoxiao2021-02-28  130

之前有网友拷贝我的java实现word转pdf代码 作为demo想在本地执行,说找不到ExtITextFontRegistry这个类,这是因为我没有把全码全部拷贝出来,只是拷贝了一下核心代码。既然有网友想要,我就一次性都给出来。给大家分享一下。

其实还有几个简单的字体类

ExtITextFontRegistry字体注册类代码

public class ExtITextFontRegistry extends ExtAbstractFontRegistry {   public static ExtITextFontRegistry getRegistry()    {        return INSTANCE;    }        @Override    protected String resolveFamilyName(String familyName, int style)    {        return familyName;    }    private static final ExtITextFontRegistry INSTANCE = new ExtITextFontRegistry(); }

ExtAbstractFontRegistry字体抽象类

public abstract class ExtAbstractFontRegistry extends AbstractFontRegistry { public static FontFactoryImp extFontFactoryImp = new ExtFontFactoryImp();    public ExtAbstractFontRegistry()    {      FontFactory.setFontImp(extFontFactoryImp);    } }

ExtFontFactoryImp字体实现类

public class ExtFontFactoryImp extends FontFactoryImp { public ExtFontFactoryImp(){     super(); } public int registerDirectories(){    int i = 0;        i += registerDirectory("c:/windows/Fonts");        i += registerDirectory("c:/winnt/fonts");        i += registerDirectory("d:/windows/fonts");        i += registerDirectory("d:/winnt/fonts");        i += registerDirectory("/usr/share/X11/fonts", true);        i += registerDirectory("/usr/X/lib/X11/fonts", true);        i += registerDirectory("/usr/openwin/lib/X11/fonts", true);        i += registerDirectory("/usr/share/fonts", true);        i += registerDirectory("/usr/X11R6/lib/X11/fonts", true);        i += registerDirectory("/Library/Fonts");        i += registerDirectory("/System/Library/Fonts");        i += registerDirectory(System.getenv("LICENSE_HOME"), true);        return i; } }

其中字体注册路径包含了windows系统和linux系统(如果转换没有字体显示可能就是没有相应的字体)。好了把上面3个类放在本地导入相应的包就可以运行了,如果还是有问题随时可以支持大家。

转载请注明原文地址: https://www.6miu.com/read-17975.html

最新回复(0)