Aspose.words21.6
破解
try{
Class<?> aClass = Class.forName("com.aspose.words.zzXyu");
java.lang.reflect.Field zzYAC = aClass.getDeclaredField("zzZXG");
zzYAC.setAccessible(true);
java.lang.reflect.Field modifiersField = zzYAC.getClass().getDeclaredField("modifiers");
modifiersField.setAccessible(true);
modifiersField.setInt(zzYAC, zzYAC.getModifiers() & ~Modifier.FINAL);
zzYAC.set(null,new byte[]{76, 73, 67, 69, 78, 83, 69, 68});
}catch (Exception e){
log.error("apose word 破解异常");
}
加载字体库
log.info("加载字体库-开始");
FontSettings defaultInstance = FontSettings.getDefaultInstance();
FontSourceBase fontSourceBase = new FolderFontSource("fonts", true);
FontSourceBase[] originalFontSources = defaultInstance.getFontsSources();
defaultInstance.setFontsSources(new FontSourceBase[]{originalFontSources[0], fontSourceBase});
log.info("加载字体库-完成");
语法分析器与dot图
// 语法分析器
implementation 'org.antlr:antlr4:4.10.1'
// dot图
implementation 'net.sourceforge.plantuml:plantuml:1.2022.13'