InfoQ

新闻

Sun发布了开源的PDF Renderer

作者 Geoffrey Wiseman 译者 李剑 发布于 2007年12月16日 上午8时3分

社区
Java
主题
开放源代码
标签
PDF

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

深度内容

和Google互补的搜索引擎Wolfram|Alpha

Wolfram|Alpha与Google究竟是什么关系,Wolfram|Alpha自己是如何定位的?Wolfram|Alaph在多大程度上是语义网搜索呢?InfoQ中文站就等等这些问题采访了Wolfram研究公司中国区商务经理王翔。

SOA契约成熟度模型

本文说明了所推荐的契约版本管理设计策略是如何与SOA成熟度模型发生联系的。文章目的是为实现版本管理和可组合性提供一个路线图。

数据服务简介

Vijay Narayanan在这篇文章中对数据服务的几个方面进行了介绍,它们都是SOA实践者和数据架构师感兴趣的内容。本文对数据服务的几个方面进行了介绍,包括需求定义,基本原理和好处、范围、开发以及消费模式。

分块云计算

在本文中,Jimmy Nilsson描述了一种他在过去数年间观察到的一种正在缓慢成长的架构风格,他把这种风格称为“分块云计算”。

豆瓣网技术架构变迁

罗马不是一天建成的,豆瓣的技术架构也是随着用户规模的增长一直在持续变化中。在本次演讲中,豆瓣的首席架构师洪强宁将与大家一起分享从上线时的单台服务器架构开始一直到现在的豆瓣架构变迁历程。

融合思想:深入探索S#arp架构

Billy McCafferty展示了S#arp架构,它在ASP.NET MVC框架的基础上,荟萃了当今的最佳实践,应用在ASP.NET Web应用程序的架构设计中。

王雷谈开源以及新兴市场计划

中国作为新兴市场中的新兴市场,是Sun在美国之外实施SSE(SUN Startup Essentials)项目重点关注的地区。在QCon Beijing 2009期间,InfoQ中文站有幸对此项目的负责人王雷先生进行了采访,探讨了关于开源、新兴市场、SSE等话题。

使用HTML5构建下一代的Web Form

HTML5 是由 WHATWG发起的,最开始的名称叫做Web Application 1.0,而后这个标准吸纳了Web Forms 2.0的标准,并一同被W3C组织所采用,合并成为下一代的HTML5标准。