学习Spire.Barcode 5.1.11版本的科学实践(六)

Spire Office
placeholder image
admin 发布于:2025-04-26 17:47:21
阅读:loading

Spire是e-iceblue公司的一个产品系列,专注于高效、功能丰富的文档处理解决方案。e-iceblue成立于2009年,致力于为开发者提供简单易用的文档处理工具,以满足各种业务需求。Spire 产品广泛应用于企业办公、教育、金融等多个行业。e-iceblue旗下有多个产品系列,也支持多种编程语言,如:NET、C++、Java、Python、JavaScript、Android等,本次以Spire.Office for Java支持的产品种类为例,经过一些时间的分析与摸索,实现它的组件应用的无水印和页数限制,以时下最新的版本为例摸索出它的科学实现分享。特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)。

1.基本介绍

Spire.Barcode for Java 是一款基于 Java 语言开发的,专门对条形码进行操作的类库。这款产品的主要功能在于帮助开发人员轻松快捷高效地生成、读取和扫描一维条码和二维条码。

Spire.Barcode for Java 使用者可以仅通过一两行代码来创建自己需要的条形码类型及数据,并整合应用到开发程序上。同时兼容大部分国产操作系统,能够在中标麒麟和中科方德等国产操作系统中正常运行。Spire.Barcode 支持各种常见的图片格式,比如 Bitmap,JPG,PNG,EMF,TIFF,GIF 和 WMF。

2.主要功能

(1)识别和生成多种 Barcode 类型

开发人员使用 Spire.Barcode for Java 从各个角度,各个方位识别各种常用 Barcode 类型,包含条形码,二维码和邮政码。

(2)生成高分辨率的条码图片

开发人员可以通过图形界面进行简单式的操作,快速生成可以打印,可扫描的 Barcode 图。Spire.Barcode for Java 支持生成各种常见的矢量图片格式,比如 Bitmap,JPG,PNG, EMF,TIFF,GIF 和 WMF。开发人员还可以多角度旋转条形码图片来获取高质量的条形码图片。

(3)Barcode 属性和样式设置

开发人员可操作和设置的条形码类型众多,包括设置 Barcode 颜色,边框,边距,宽度以及各种属性,数据样式等等。

(4)支持多达 38 种条形码类型

Spire.PDF for Java 支持开发人员可以轻易地将 Spire.PDF for Java 集成到 Java(J2SE 和 J2EE)应用程序中。将 PDF 文档高质量地转换为 PowerPoint 演示文稿、XPS、Excel、图片(JPEG、PNG)、SVG、Word、HTML、OFD 和 PDF/A 格式,以及将 SVG、XPS、HTML、OFD 和 TXT 文档高质量地转换为 PDF 格式。

(5)文档安全性设置

Spire.PDF for Java 支持给 PDF 文档添加和验证数字签名,加密和解密 PDF 文档,修改 PDF 文档的安全权限,以及检测签名后的 PDF 文档是否被修改。

(6)易于集成

比如:CODE 25、CODABAR、CODE 11、INTERLEAVED 25、CODE 39、CODE 39 EXTENDED、CODE 93、CODE 93 EXTENDED、CODE 128、EAN 8、EAN 13等等。

3.示例实现

基于Spire.Barcode实现一个简单的文档格式转换示例,在我看来就足够了,至于它的更多/更强大/更专业的API及高级用法我就不摸索了,本次基于“spire.barcode-5.1.11.jar”版本,仅对它的水印和文档页数进行摸索实践,将一个有,参考如下代码:

public class HelloWorldBarcode {

    public static void main(String[] args) throws Exception {
        BarcodeCreator barcode = new BarcodeCreator();
        barcode.setCodeText("1234657890");
        barcode.setBorderWidth(2f);
        File folder = new File("output/barcode");
        if (!folder.exists()) {
            folder.mkdirs();
        }
        barcode.save("output/barcode/Barcode.png", SupportedFileFormat.Png);
        barcode.save("output/barcode/Barcode.gif", SupportedFileFormat.Gif);
        barcode.save("output/barcode/Barcode.bmp", SupportedFileFormat.Bmp);
        barcode.save("output/barcode/Barcode.jpeg", SupportedFileFormat.Jpeg);
        barcode.dispose();
        createForQrCode();
    }

    private static void createForQrCode() throws Exception {
        BarcodeSettings settings = new BarcodeSettings();
        settings.setData("1234567890");
        settings.setType(BarCodeType.QR_Code);
        settings.setShowTextOnBottom(true);
        settings.hasBorder(true);
        BarCodeGenerator barCodeGenerator = new BarCodeGenerator(settings);
        BufferedImage bufferedImage = barCodeGenerator.generateImage();
        ImageIO.write(bufferedImage, "png", new File("output/barcode/QR_CODE.png"));
    }

}

示例说明】

(1)示例共计生成了5个图片文件,分别是4个不同类型文件的条形码和二维码;

(2)生成PNG、GIF、BMP、JPEG格式的条形码;

(3)生成PNG格式的二维码;


image.png

(条形码和二维码)

4.其它说明

(1)Spire.Office不是开源免费的使用,Github上有示例项目,包含了大量的示例,示例的结果就是生成了一些《Evaluation Warning》警告、水印、内容页数限制、内容文本限制等;

(2)Spire.Office公司旗下有许多编程语言支持的多种Office文档产品,都是商业付费版本,常见于各种文档格式文件的操作,都需要商业授权使用官网也有更多更详细的说明;

(3)科学实现将是改动jar中class的方式,有必要说的是这个jar文件中并未使用RSA/SF的文件class加密,也可以可以不用改动jar文件的,只需要将改动的class文件单独放置在一个jar文件中,运行是使用java -cp或jar -jar命令时优先加载改动的class,最后加载原始jar中class的形式即可实现不改动jar文件;

(4)Spire.Office下辖的各个产品组件为独立存在的各个产品,Office是提取全集产品中的汇总,囊括了全部产品组件的范围,对内提供统一的版本管理,对外提供一个产品范围体系;

(5)Spire的官网有提供Free Spire.Office for Java免费版本,免费版有篇幅限制,除了文档篇幅限制外,没有任何警告信息,但官方仅对免费版进行不定期维护,不提供技术服务或其他支持服务;

(6)本次学习摸索的目的是基于专业版进行的专业实践,实践的结果就是无水印,无内容页数限制;

(7)特别说明:只为单纯的学习摸索与自我突破,商业软件请勿直接使用于生产环境(购买商业授权)

(8)示例与相关文件下载:《Spire.Barcode示例相关下载.zip》,注:下载并不包含具体的科学实现部分,只是源文件与示例输出文件;


 点赞


 发表评论

当前回复:作者

 评论列表


留言区