查看原文
其他

开发者把写了 12 年的软件,开源了!

macrozheng 2023-02-06

The following article is from CodeSheep Author CodeSheep

如果要说到国产老牌的工具软件,那Windows平台上的老牌多功能PDF文档处理工具箱「PDF补丁丁」或许能占据一席。

用过的小伙伴都知道,PDF补丁丁是一个用于修改PDF文件的工具软件,支持诸多丰富的PDF文档处理功能:

  • 修改PDF文档(属性、尺寸、页号等)
  • PDF书签处理(编辑、自动生成等)
  • PDF内容解析和提取(无损提取图片等)
  • PDF文档结构探查器
  • 制作PDF文件
  • 拆分/合并PDF文件
  • PDF文件转换
  • ...

其实之前这款工具软件一直是免费提供给用户使用的,但是并没有开源。

而如今,这款拥有十几年历史的国产老牌PDF工具在不久前真的正式官宣开源了(除第三方组件外),并且已经在 GitHub上发布了软件源码仓库,地址为:https://github.com/wmjordan/PDFPatcher
之所以会关注到这款软件的开源信息,而且会为此感到非常兴奋,并奋笔疾书写下了这篇文章,原因其实非常简单。
一来是因为笔者自己本身就是一个PDFPatcher工具箱的老用户了。
当年使用这款软件也是当时在处理PDF文档时,受实验室一位师兄的安利,然后就一直用了下来。
自己的Windows笔记本上这款软件已经使用多年,而且也成了Windows系统的装机必备软件了。
另外一个原因则是,正好前段时间一款名为「PDFPatcher」的软件出现在GitHub Trending热榜上,进去一看,居然发现是这款老牌工具软件的开源仓库。

开发者@wmjordan其实于2009年就已经开始了该款工具软件的开发工作,所以满打满算,到现在也有十几年的历史了。

能够持续十几年来维护这一款软件,并且选择在近来开源,想来作者也是倾注十分的情感了。
短短一个月的时间,该开源项目目前已经在GitHub上收获了3200+ Star标星,并且不少用户参与了对应的Issue,提出了不少讨论,需求,以及改进意见。

除此之外,从作者开源的源码仓库可以看出来,这个工具软件的主要完成语言是C#C语言

当然这并不难理解,因为毕竟它也是一个Windows平台上基于.NET Framework的图形化工具软件。

PDF补丁丁基于.NET Framework 开发,主要采用iText和MuPDF 这两个开源组件库来处理 PDF文档。前者本身就是.NET 组件,而后者采用C语言开发并编译。
作者在项目主页中也提供了其对应的编译开发环境:

Windows 10,Visual Studio 2019

工作负载:.NET 桌面开发、C++桌面开发(带 Windows 10 SDK)

并且还给出了项目源代码的结构:
有兴趣的同学可以对照学习和配置。

最后还特别值得一提的是这个开源项目的授权协议,其除了遵守常规的开源项目协议要求之外,作者还特别加了一条「良心授权」协议

本软件及源代码采用「良心授权」协议

  • 用户每次使用本软件后如有所获益,应行一善事;

  • 如使用源代码开发了新的软件并获得收益,应将收益中不低于千分之一的金额捐赠给社会的弱势群体。

作者心怀大爱,这或许就是一个程序员的终极浪漫吧。

看到这里,我也不禁泪目了~

微信8.0将好友放开到了一万,小伙伴可以加我大号了,先到先得,再满就真没了

扫描下方二维码即可加我微信啦,2022,抱团取暖,一起牛逼。

推荐阅读


您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存