aspose-pdf 去除水印以及处理的页数限制 操作aspose-pdf-20.12-jdk17.jar 对其重编译修改校验权限 使用javassist 重编译学习测试使用package com.xlw.filebag.compile; import javassist.ClassPool; import javassist.CtClass; import javassist.CtMethod; /** * date 2021-03-16 * user xlw * PDFCompile * */ public class PDFCompile { public static void main(String[] args) throws Exception { compile(); } public static void compile() throws Exception{ ClassPool.getDefault().insertClassPath(C:\\Users\\Administrator\\Desktop\\jar\\aspose-pdf-20.12-jdk17.jar); CtClass ctClass ClassPool.getDefault().getCtClass(com.aspose.pdf.ADocument); CtMethod[] declaredMethods ctClass.getDeclaredMethods(); for (CtMethod method: declaredMethods) { CtClass[] ps method.getParameterTypes(); if (ps.length2 method.getName().equals(lI) ps[0].getName().equals(com.aspose.pdf.ADocument) ps[1].getName().equals(int)){ // 最多只能转换4页 处理 System.out.println(method.getReturnType()); System.out.println(ps[1].getName()); method.setBody({return false;}); } if (ps.length0 method.getName().equals(lt)){ // 水印处理 method.setBody({return true;}); } } ctClass.writeFile(C:\\Users\\Administrator\\Desktop\\jar\\); } }package com.ysxn.office; import javassist.*; import java.io.IOException; /** * aspose-cells for java 21.11 测试 * author : xlw * since : 2026-09-02 13:59 * JavasistCompile */ public class JavasistCompile { public static void main(String[] args) { crackAsposePdfJar(C:\\Users\\Administrator\\Desktop\\aspose-cells-21.11.jar); } private static final String DesktopC:\\Users\\Administrator\\Desktop\\; private static void crackAsposePdfJar(String jarName) { try { // 这个是得到反编译的池 ClassPool pool ClassPool.getDefault(); // 取得需要反编译的jar文件设定路径 pool.insertClassPath(jarName); CtClass ctClass pool.get(com.aspose.cells.License); CtMethod[] declaredMethods ctClass.getDeclaredMethods(); for (CtMethod method : declaredMethods) { if (method.getName().equals(isLicenseSet)) { method.setBody({return true;}); continue; } if (method.getName().equals(setLicense)) { method.setBody({ a this;\n com.aspose.cells.zblc.a();}); continue; } } ctClass.writeFile(Desktop); } catch (NotFoundException e) { e.printStackTrace(); } catch (CannotCompileException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }编译之后替换jar包中原来的class文件并删除原有jar中 37E3C32D.SF 、37E3C32D.RSA 文件

相关新闻

最新新闻

OpenScreen 剪辑区域指南:5 步剪掉录屏里的多余片段

OpenScreen 剪辑区域指南:5 步剪掉录屏里的多余片段

OpenScreen 剪辑区域指南:5 步剪掉录屏里的多余片段 【免费下载链接】openscreen Create stunning demos for free. Open-source, no subscriptions, no watermarks, and free for commercial use. An alternative to Screen Studio. 项目地址: https://gitcode.c…

2026/9/3 13:15:29
Anki 间隔重复新手指南:如何记住不再忘

Anki 间隔重复新手指南:如何记住不再忘

Anki 间隔重复新手指南:如何记住不再忘 【免费下载链接】anki Anki is a smart spaced repetition flashcard program 项目地址: https://gitcode.com/GitHub_Trending/an/anki 考前一晚,你刚背完的考点第二天就忘了一半——这正是 Anki 间隔重复…

2026/9/3 13:15:29
3 步上手 QtScrcpy:安卓投屏控制与键鼠操作完全指南

3 步上手 QtScrcpy:安卓投屏控制与键鼠操作完全指南

3 步上手 QtScrcpy:安卓投屏控制与键鼠操作完全指南 【免费下载链接】QtScrcpy Android real-time display control software 项目地址: https://gitcode.com/GitHub_Trending/qt/QtScrcpy 想把手机画面切到会议室大屏,又想在电脑上用键盘鼠标流畅…

2026/9/3 13:15:29
思源笔记完整实战指南:从首次启动到自托管只要 10 分钟,外加 5 条避坑建议

思源笔记完整实战指南:从首次启动到自托管只要 10 分钟,外加 5 条避坑建议

思源笔记完整实战指南:从首次启动到自托管只要 10 分钟,外加 5 条避坑建议 【免费下载链接】siyuan An open-source, privacy-first, self-hosted knowledge workspace where humans and AI agents work together 开源、隐私优先、自托管的知识工作空间&…

2026/9/3 13:15:29
游戏脚本技术解析:内存读写与函数调用实现自动化控制

游戏脚本技术解析:内存读写与函数调用实现自动化控制

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/9/3 13:15:29
科研工具盘点——在线科研绘图网站

科研工具盘点——在线科研绘图网站

做科研从来都逃不开一句话:一张图胜过千言万语。不管是投稿论文、申报国自然还是做学术汇报,一张清晰规范又美观的科研图,不仅能精准传递你的研究逻辑,还能直接给成果加分不少。今天就给大家整理了5款适配不同科研场景的实用绘图工…

2026/9/3 13:10:29