
使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如_ Skia、OpenPDF).md
使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF) 使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF) 问题背景 不同的PDF生成引擎可能使用不同的坐标系约定: 标准PDF坐标系:原点在页面左下角,Y轴向上 Skia引擎坐标系:可能存在Y轴翻转或其他矩阵变换 OpenPDF引擎:在某些情况下可能产生镜像或其他异常...
共 22 篇文章

使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF) 使用Itext9生成PDF水印,兼容不同生成引擎的坐标系(如: Skia、OpenPDF) 问题背景 不同的PDF生成引擎可能使用不同的坐标系约定: 标准PDF坐标系:原点在页面左下角,Y轴向上 Skia引擎坐标系:可能存在Y轴翻转或其他矩阵变换 OpenPDF引擎:在某些情况下可能产生镜像或其他异常...

使用 iText 9 为 PDF 添加文字水印的完整实战 1️⃣ 背景与需求 在企业内部流转或对外发布的 PDF 文档中,往往需要加入“内部仅阅”“机密”等标识,以防止泄露或伪造。iText 9 作为业界成熟的 PDF 处理库,提供了灵活的绘图 API,能够在已有 PDF 上批量、透明、倾斜地绘制文字水印。 博客示例基于 iText 9,实现了以下功能: 支持中文水印(使用 STSongLigh...

Oracle向PG转移建议以及注意点 ✅ 一、语法差异与迁移建议 1. 包结构(Package) Oracle 支持 PACKAGE 和 PACKAGE BODY 分离定义。 PostgreSQL 不支持包结构,需将每个函数/过程单独定义。 迁移建议: 将 PACKAGE 包中的每个函数和存储过程拆分为独立的 FUNCTION 或 PROCEDURE。 使用模式(Schema)来组织这些对...

在 Spring 管理的事务环境中,获取当前事务下的 JDBC Connection 有以下几种常见方式,适用于不同场景: ✅ 方法一:通过 DataSourceUtils 获取(推荐) Spring 提供了工具类 DataSourceUtils,可以从当前事务中获取绑定的 Connection。 示例代码: java import org.springframework.jdbc.datasou...

1.函数式编程思想 最近工作中遇到很多函数式编程使用的实例,Stream流之类的操作,但是我由于我很久没接触到,没使用这一特性导致代码阅读起来有点吃力,故借周末补充一下相关的知识点,作此笔记供下次查阅。 1.1 概念: 面向对象思想需要关注用什么对象完成什么事情。而函数式编程思想就类似于我们数学中的函数。主要关注对数据进行了什么操作。 1.2 优点 : 代码简洁,开发快速 接近自然语言,易于...
Java线程基础回顾 概念 程序(Program) 完成特定任务,用某种语言编写的一组指令的集合.简单来说:就是我们的代码. 进程 进程指运行中的程序,比如我们使用的QQ,就启动了一个进程,操作系统就会为该进程分配内存空间. 进程是程序的一次执行过程,或是正在运行的一个程序.是动态过程:有它滋生的生产,存在和消亡的过程. 线程 线程是由进程创建,是进程的一个实体 ...
Spring练习 1.1 Spring环境搭建 创建工程 导入静态页面 导入需要做表 创建包结构(controller service dao domain utils) 导入数据库脚本 创建POJO类 创建配置文件 (applicationContext.xml springmvc.xml jdbc.properties log4j.properties)
1.1 JDBCTemplate概述 它是Spring框架中提供的一个对象,是对原始繁琐的JDBCAPI对象的简单封装, Spring框架为我们提供了很多的操作模板类.例如:操作关系型数据库的JDBCTemplate和HibernateTemplate,操作nosql数据库的RedisTemplate,操作消息队列的JmsTemplate 1.2 JDBCTemplate开发步骤 导入Sprin...
SpringMVC 要点 MVC数据请求方式 基本类型参数 POJO类型参数 数组类型参数 集合类型参数 MVC获取数据细节 中文乱码问题 @RequsetParam和@PathVariable 自定义类型转换器 获取Servlet相关API @RequestHeader和@CookieValue 文件上传
SpringMVC 请求 1. 获得请求参数 客户端请求参数的格式是: name=value&name=value...... 服务端要获得请求的参数,有时还需要进行数据的封装,SpringMVC可以接收如下类型的参数: 基本类型参数 POJO类型参数 数组类型参数 集合类型参数 1.获得基本类型参数 Controller中的业务方法的参数名称要求与请求参数的name一...