学习GroupDocs.Annotation的简单实践
GroupDocs
admin 发布于:2025-03-21 11:22:02
阅读:loading
前面在摸索了Aspose For Java的全量产品组件共计23款,闲来无事偶然又发现了在GroupDocs方向又存在一些产品,这些产品基本都是取自于一个又一个的组件,取自所有组件中的一个方向进行汇总,组成一个统一的产品包。本次摸索学习GroupDocs.Redaction产品,经过一些持续的分析和摸索,结合使用反射的形式来调用,也就是说在API的使用前进行一次特殊的代码注册,即可实现授权,全程不需要License之类的xml,或是文档无水印、或是文档页数限制、或是获取内容无限制,等等。
特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)。
本次实践的是GroupDocs.Annotation for Java的24.6版本(当前最新版本),通过 Java API 进行文档注释,构建具有查看和注释 PDF、HTML、MS Office 和其他文档格式功能的 Java 应用程序,GroupDocs.Annotation Java API 是一款产品,允许您在不同平台和操作系统(例如 Android、MacOS、Linux、Windows)上处理文档中的注释。 GroupDocs.Annotation 提供了一个具有简单 API 的库,具有许多优点:例如,如果您需要对数据保密或选择使用该库需要多少权限,或者部分更改使用注释的工作,该库非常适合轻便灵活。GroupDocs.Annotation for Java API 允许您使用不同类型的注释,其中包括:文本、折线、区域、下划线、点、水印、箭头、椭圆、文本替换、距离、文本字段、资源编辑等。并支持大多数流行的文档格式,例如:PDF、HTML、Microsoft Office Word、Excel 电子表格、PowerPoint 演示文稿、Visio、Outlook 电子邮件、图像、图元文件、CAD 绘图和各种其他格式。该 API 提供获取文档页面缩略图的功能,并支持在 PDF 文件中导入和导出注释。
上面这一段摘自官网的介绍,整体上觉得很抽象,运行示例项目中相关的例子后我理解的意思:GroupDocs.Annotation是给文档增加/修改注释(批注)的,可以是向文档(PDF文件)中增加按钮、文本框、文本、折线、箭头、矩形、圆形等的批注,允许用户在文件上添加评论、标记和其他注释,是一个强大的文档注释解决方案。
以官网提供的Github示例`https://github.com/groupdocs-annotation/GroupDocs.Annotation-for-Java`为准,分别从其中挑出几个简单的示例来演示,本次运行了较多的示例代码,详细参考如下:
(下划线批注)
(文本框批注)
(文本高亮批注)
(水印批注)
水印批注的代码参考如下:
public class AddWatermarkAnnotation {
public static void run() {
String outputPath = Constants.getOutputFilePath("AddWatermarkAnnotation",
FilenameUtils.getExtension(Constants.INPUT_PDF));
final Annotator annotator = new Annotator(Constants.INPUT_PDF);
Reply reply1 = new Reply();
reply1.setComment("First comment");
reply1.setRepliedOn(Calendar.getInstance().getTime());
Reply reply2 = new Reply();
reply2.setComment("Second comment");
reply2.setRepliedOn(Calendar.getInstance().getTime());
java.util.List<Reply> replies = new ArrayList<Reply>();
replies.add(reply1);
replies.add(reply2);
WatermarkAnnotation watermark = new WatermarkAnnotation();
watermark.setAngle((double) 75);
watermark.setBox(new Rectangle(200, 200, 100, 50));
watermark.setCreatedOn(Calendar.getInstance().getTime());
watermark.setText("Watermark");
watermark.setFontColor(65535);
watermark.setFontSize((double) 12);
watermark.setMessage("This is watermark annotation");
watermark.setOpacity(0.7);
watermark.setPageNumber(0);
watermark.setReplies(replies);
annotator.add(watermark);
annotator.save(outputPath);
annotator.dispose();
System.out.println("\nDocument saved successfully.\nCheck output in " + outputPath);
}
}
(1)`GroupDocx.xxx`不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;
(2)aspose旗下有许多的产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用,也基本都是支持多种编程语言的,如有Java、C++、.NET等等,官网也有多种在线示例;
(3)示例与相关文件下载:《GroupDocs.Annotation示例输出.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;
(4)科学实现分为两种情况,一种是使用反射,另一种是使用License.xml文件;
(5)aspose相关的各个产品组件为独立存在的各个产品,GroupDocs是提取全集产品中的某个功能的集合,提供了一个大类的功能操作,并且统一对外提供API;
(6)本次使用的GroupDocs.Annoatation授权方案在以下文件类型中进行了验证:pdf等;
点赞
发表评论
评论列表
留言区
- 学习GroupDocs.Assembly的Word模板实践
- 学习GroupDocs.Assembly的Excel模板实践
- 学习GroupDocs.Assembly的PPT模板实践
- 学习GroupDocs.Assembly的其它模板实践
- 学习GroupDocs.Watermark的增加与删除文本水印实践
- 学习GroupDocs.Watermark的增加与删除图片水印实践
- 学习GroupDocs.Redaction的Xlsx实践
- 学习GroupDocs.Redaction的Docx实践
- 学习GroupDocs.Redaction的其它文件类型实践
- 学习GroupDocs.Signature的简单实践
- 学习GroupDocs.Conversion的Spring版在线示例
- 学习GroupDocs.Conversion的简单实践
- 学习GroupDocs.Merger的简单实践
- 学习GroupDocs.Parser的简单实践
- 学习GroupDocs.Comparison的Spring版在线示例
- 学习GroupDocs.Comparison的简单实践