写点什么

Sun 发布了开源的 PDF Renderer

  • 2007-12-16
  • 本文字数:937 字

    阅读完需:约 3 分钟

Sun 将一个新的开源项目—— PDF Renderer ——作为 SwingLabs 的一部分于近日发布。Sun 对该项目的描述是:“一个 100% 用 Java 编写的 PDF 渲染器和查看器”。PDF Renderer 可以用来将可移植文档格式(Portable Document Format,PDF)从文件中解析出来,并以 AWT 图像或任何 Graphics2D 的实现形式在 panel 中显示。该项目与 SwingLabs 的其他部分一样,都是以 LGPL 许可发布的。在项目首页上列出了一些潜在的用途:

  • 在用户自己的应用中查看 PDF。
  • 提供 PDF 文件的打印预览。
  • 将 PDF 绘制为 PNG 图像,用以在服务器端的 Web 应用中显示。
  • 将 PDF 合并到 3D 场景中。
  • 在 PDF 之上绘图,并可以在网络查看器中进行标注。

虽然这个项目是在 2007 年 12 月被开源的,但是它却有一段颇久的历史:

在 2003 年,Sun 实验室的一群研究员开发出了 PDF Renderer,当时它还是一款视频协作工具,Sun(TM)Labs Meeting Suite 的一部分。这个工具在 Sun 内部的分布式会议中得到了广泛应用。Meeting Suite 的设计初衷是方便人们使用 OpenOffice 创建的文稿做发言。

现在,这个公众项目还只是处于早期阶段,所以文档资源还很凌乱,也没有很大的用户社区。但是,Joshua Marinacci 希望通过把这个项目开源,把那些可能为项目贡献力量的开发者们凝聚成一个社区:

虽然最原始的代码是来自 Sun 的,但我们希望能获得社区的高度参与。为保证这一点,我们聘请了 Elluminate 的 Tom Oke 来管理这个项目。他将担任项目所有者和首席架构师的角色。他很快掌握了现有的代码,并期待着与其他的参与者进行讨论。我们最开始的目标是将 PDF 输出成 OpenOffice 格式,所以有些特性被遗漏掉了。它实现了绝大多数的 PDF 1.4 规范,但是少了透明度(transparency),填充表单(fill-in forms)和某些特定的字体编码。我们希望有兴趣的开发者可以帮助我们完成这些特性。

另外,Josh 还将这个项目与其他 PDF 库进行了比较:

JPedal 使用了 GPL 许可,所以有些应用根本就没法用它。我们认为对于类似这样的库而言,使用 LGPL 是更好的选择。 iText 不是一个查看器 / 渲染器。它可以生成 PDF 文档,但并不能查看文档。这让 iText 和 SwingLabs PDF Renderer 变成了优秀的合作伙伴。我期盼着看到人们如何将它们进行合并。

查看英文原文 Sun Releases Open-Source PDF Renderer

2007-12-16 08:032602
用户头像

发布了 197 篇内容, 共 61.6 次阅读, 收获喜欢 21 次。

关注

评论

发布
暂无评论
发现更多内容

【高并发】在高并发环境下该如何构建应用级缓存?

冰河

并发编程 多线程 高并发 异步编程 6月月更

应用流程挖掘,发现潜在RPA可实施的场景,助力银行优化业务流程

易观分析

RPA

选择天翼云混合云管理平台的五大理由

天翼云开发者社区

数字先锋| 天翼云牵手中能融合

天翼云开发者社区

Flutter 图片库重磅开源!

阿里巴巴终端技术

flutter 开源 native 客户端

玩转云端|一文读懂天翼云CDN升级重点

天翼云开发者社区

这个API文档,太拽了吧!

Liam

前端 Postman API API文档 开放api

【Spring 学习笔记(一)】第一个Spring程序与IoC思想

倔强的牛角

6月月更

多模态语义检索 | 基于 MetaSpore 快速部署 HuggingFace 预训练模型

Geek_a02d1e

机器学习 深度学习 开源 AI 多模态

2022年中国新能源汽车换电市场发展洞察

易观分析

新能源汽车

5G+实时云渲染:交互实时云看车革新购车体验

3DCAT实时渲染

5G 汽车之家 汽车 元宇宙 实时云渲染

博云容器云产品族:如何实现让“Any APP on Any Kubernetes”?

BoCloud博云

云原生 容器云

AI“爷青回”:一键找回童年记忆

最新动态

直播回顾 | 7000字干货,深析区块链+汽车供应链金融的应用价值

旺链科技

区块链 产业区块链 供应链金融

当AI抄起了水表

华为云开发者联盟

人工智能 modelarts workflow 智能水务

哈希游戏开发竞猜系统哈希值hash算法

薇電13242772558

哈希算法

华为云GaussDB首席架构师冯柯:摘取皇冠上的明珠,华为云数据库的创新与探索

华为云开发者联盟

数据库 华为云 GaussDB 国产数据库

【LeetCode】 删除二叉搜索树中的节点Java题解

Albert

LeetCode 6月月更

leetcode 417. Pacific Atlantic Water Flow 太平洋大西洋水流问题

okokabcd

LeetCode 搜索 数据结构与算法

撑算力之帆,天翼云助力数字时代逐潮者远航

天翼云开发者社区

函数节流和函数防抖和他们的区别

工边页字

JavaScript 性能优化 前端 6月月更

【云服务器】云计算平台的架构是什么样的?

Finovy Cloud

云服务器 GPU服务器

移动平台打造新生态 | 助力企业跨业务、一站式、全场景的系统建设

BeeWorks

一篇文章带你彻底了解哈希表

武师叔

算法 哈希表 6月月更

科创人·神州数码集团CIO沈旸:最佳实践模式正在失灵,开源加速分布式创新

科创人

Java 中三大类数据类型

迷篱

天猫精灵语音技能单轮对话表达式的参数定义

汪子熙

人工智能 机器学习 聊天机器人 机器人 6月月更

样品管理系统解决方案

低代码小观

Lims LIMS实验室信息管理系统 LIMS系统

使用 LakeSoul 构建实时机器学习样本库

Geek_a02d1e

机器学习 大数据 开源 新基建 湖仓一体

InfoQ 极客传媒 15 周年庆征文|一文读懂分布式系统本质:高吞吐、高可用、可扩展

No Silver Bullet

架构 分布式系统 可扩展 6月月更 InfoQ极客传媒15周年庆

龙蜥开发者说:不忘初心,方得始终 | 第 7 期

OpenAnolis小助手

开源 cpu 龙蜥开发者说 飞腾 不忘初心

Sun发布了开源的PDF Renderer_Java_Geoffrey Wiseman_InfoQ精选文章