腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
首页
学习
活动
专区
工具
TVP
最新优惠活动
返回腾讯云官网
Java工程师成长之路
专栏成员
举报
210
文章
261405
阅读量
43
订阅数
订阅专栏
申请加入专栏
全部文章(210)
spring(30)
编程算法(28)
sql(25)
java(24)
数据库(22)
网络安全(21)
云数据库 Redis(20)
http(20)
https(17)
javascript(16)
容器(14)
网站(12)
node.js(11)
缓存(10)
容器镜像服务(9)
tcp/ip(9)
Elasticsearch Service(9)
云数据库 SQL Server(8)
maven(8)
分布式(8)
mybatis(8)
scala(7)
html(7)
github(7)
rabbitmq(7)
vue.js(6)
xml(6)
ide(6)
腾讯云测试服务(6)
微信(6)
小程序(6)
json(5)
打包(5)
git(5)
api(5)
nginx(5)
负载均衡(4)
bash(4)
bootstrap(4)
android(4)
tomcat(4)
负载均衡缓存(4)
bash 指令(4)
开源(4)
zookeeper(4)
dubbo(4)
app(4)
properties(4)
配置(4)
官方文档(3)
css(3)
apache(3)
存储(3)
html5(3)
hadoop(3)
面向对象编程(3)
hashmap(3)
spring cloud(3)
大数据(3)
微服务(3)
云服务器(2)
ios(2)
python(2)
mvc(2)
jar(2)
linux(2)
访问管理(2)
运维(2)
压力测试(2)
jvm(2)
spring boot(2)
jdbc(2)
aop(2)
ps(2)
工具(2)
注解(2)
其他(1)
tensorflow(1)
mac os(1)
c 语言(1)
php(1)
ruby(1)
lua(1)
jquery(1)
access(1)
eclipse(1)
unix(1)
文件存储(1)
数据库一体机 TData(1)
消息队列 CMQ 版(1)
eslint(1)
webpack(1)
kubernetes(1)
自动化(1)
spark(1)
jdk(1)
ssh(1)
hive(1)
unity(1)
npm(1)
rpc(1)
udp(1)
数据分析(1)
windows(1)
架构设计(1)
element ui(1)
kafka(1)
boot(1)
build(1)
cas(1)
cat(1)
cmd(1)
com(1)
constraints(1)
controller(1)
datepicker(1)
distance(1)
el(1)
email(1)
error(1)
feign(1)
filter(1)
final(1)
fixed(1)
flex(1)
fluent(1)
geo(1)
handle(1)
hystrix(1)
input(1)
interface(1)
itext(1)
java8(1)
jdk8(1)
jetty(1)
jpa(1)
jwt(1)
keyboard(1)
lambda(1)
list(1)
load(1)
localhost(1)
lock(1)
logback(1)
mac(1)
match(1)
menu(1)
multicast(1)
null(1)
path(1)
pdf(1)
redis(1)
route(1)
security(1)
session(1)
set(1)
sh(1)
sidebar(1)
simpledateformat(1)
state(1)
storage(1)
store(1)
sys(1)
tabbar(1)
tabs(1)
text(1)
thread(1)
token(1)
validation(1)
报表(1)
编码(1)
博客(1)
测试工具(1)
登录(1)
动画(1)
二进制(1)
分页(1)
工具类(1)
继承(1)
前端(1)
日志(1)
设计模式(1)
线程安全(1)
异常处理(1)
源码(1)
主机(1)
搜索文章
搜索
搜索
关闭
itext7知识点研究(PDF编辑)
编程算法
数据库一体机 TData
java
static class MyEventListener implements IEventListener { private List<Rectangle> rectangles = new ArrayList<>(); @Override public void eventOccurred(IEventData data, EventType type) { if (type == EventType.RENDER_TEXT) { TextRenderInfo renderInfo = (TextRenderInfo) data; Vector startPoint = renderInfo.getDescentLine().getStartPoint(); Vector endPoint = renderInfo.getAscentLine().getEndPoint(); float x1 = Math.min(startPoint.get(0), endPoint.get(0)); float x2 = Math.max(startPoint.get(0), endPoint.get(0)); float y1 = Math.min(startPoint.get(1), endPoint.get(1)); float y2 = Math.max(startPoint.get(1), endPoint.get(1)); rectangles.add(new Rectangle(x1, y1, x2 - x1, y2 - y1)); } } @Override public Set<EventType> getSupportedEvents() { return new LinkedHashSet<>(Collections.singletonList(EventType.RENDER_TEXT)); } public List<Rectangle> getRectangles() { return rectangles; } public void clear() { rectangles.clear(); } } static class MyCharacterEventListener extends MyEventListener { @Override public void eventOccurred(IEventData data, EventType type) { if (type == EventType.RENDER_TEXT) { TextRenderInfo renderInfo = (TextRenderInfo) data; for (TextRenderInfo tri : renderInfo.getCharacterRenderInfos()) { super.eventOccurred(tri, type); } } } }
老梁
2019-09-10
2.7K
0
没有更多了
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
立即查看
Python精品学习库
代码在线跑,知识轻松学
立即查看
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
立即体验
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
立即查看
领券
问题归档
专栏文章
快讯文章归档
关键词归档
开发者手册归档
开发者手册 Section 归档