Reading/Web/PDF Functionality/zh

Update on PDF rendering, June 4, 2019
We have deployed the new renderer for single-article PDFs for all projects. We hope this will resolve the issues associated with the Electron renderer, which was often unable to generate PDFs as expected. Please feel free to try out the new renderer and let us know if you have questions or come across any bugs or other issues.

2019年3月18日PDF渲染的更新
We're getting close to the deployment of our new renderer, Proton, with only a few tasks remaining as blockers (as can be seen in the task graph in T181084). 一旦设置了部署日期，我们将发布另一个更新. 此渲染器将替换电子渲染器作为单页PDF的默认PDF渲染器.

2018年8月17日图书更新


这份PDF updated and more comprehensive sample 展示了新的书本渲染效果，相较于在维基年会上发布的第一版本布局已经有了很大变化，感谢大家的反馈. 导出功能仍有一些明显的问题：页面断裂，消息框，表格以及数学公式都还可以有很大的改进空间. 这份PDF sample file focusing on international scripts and math formulas 中就有几处需要解决的问题. 数序公式现在是使用MathML来渲染的，改为使用LaTeX后效果应该会显著提升.

2018年8月8日图书更新
我们一直在与PediaPress合作制作和设计新书. 他们为我们提供了当前输出的样本，这与最终版本非常相似. 我们与PediaPress团队讨论了他们目前正在解决的改进点. 如果您对这些样品有任何反馈或其他意见，请在讨论页告诉我们.

2018年4月图书更新
图书功能会通过PediaPress回来. 在我们详细研究了新的生成器后，我们发现原有图书生成器的核心功能（如页码和目录）在新的生成器上很难执行. 除此之外，我们的连接代码也有重要的问题. 因此，将PDF图书功能带回Wikimedia项目需要新的替代方案. PediaPress是Wikimedia图书功能的最初赞助者. 我们找到了PediaPress，希望知道他们是否愿意接手将图书生成为PDF的任务. 我们的想法获得了同意，目前正在研究细节和制定计划. 他们将会从基于原来用于创建PDF的旧技术的解决方案开始. 这些解决方案可能会有一些视觉内容（如地图）方面的缺点，但是可以提高解决方案的运行速度. 接下来他们计划基于前一解决方案的反馈推出一个新的将HTML转换为PDF的生成器.

2018年1月更新
我们正在准备图书功能的性能测试. 在2月初我们会得到更多信息

2017年九月更新
我们目前的PDF渲染服务，离线内容生成器（OCG）现已不在维护. 说白了，就是坏掉了. 维基媒体基金会阅读团队已决定在接下来几个月内替换这一服务. OCG依然基于过时代码运行，这今后可能导致安全漏洞及其他严重问题. 在过去3个月内，我们在PDF创建页面放置横幅，请求就新渲染模式提供反馈. 新的渲染器将以OCG为基础改进其性能——它将能够打印表格和信息框，并将包含朝向最佳易读性努力的样式设计. 我们收到了很多新模式的积极反馈，并且正致力于为新的PDF生成器进行必要更新.

后续补充：将生成PDF图书生成功能关闭一段时间
不幸的是，原有生成器（OCG）的主要问题迫使我们将它从生成选项中移除，而不是继续对其进行必要的更新. 这个结果比我们期待的要早. 移除OCG的时候，将单独的页面转换为PDF的操作依然可以完成. 但在我们评估和完成必要的工作前图书PDF的生成将会暂停. 我们最初选择用Electron渲染服务进行替换，但它不支持较大的PDF文件，在尝试生成有多个页面的图书时也会失败. 我们会继续尝试找到新的符合我们要求同时能够控制文件大小的图书生成系统. 这并不是我们如何计划这样做，因为我们从来就没有暂时移除图书PDF功能的目的.

時間軸:


 * 发布功能完备的单页生成器（打印到PDF）——2017年10月1日
 * 暂停图书PDF渲染——2017年10月1日
 * 彻底停用OCG渲染器——2017年10月1日
 * 发布完整功能的图书渲染器——2018年1月（基于研究结果计划发布的备选渲染系统）

功能:

一系列当前的和将要到来的功能，参见该页

除了更新此页面之外，还将在PDF创建页面的横幅中，技术新闻和一些维基媒体邮件列表中进行传达.

介紹
我們目前的PDF渲染服務，離線內容產生器不再維護. 簡單的講，它已經过期了. 它原本由第三方建立架構，而目前仍在運行老舊的程式代碼，而這在今後可能導致安全漏洞及其他大規模問題. 如果我們仍然需要PDF功能，遺憾的講，我們將不得不替換它，或者我們突然找到一種不需要計劃什麼，甚至不需要這種功能的解決方案.

此外，它不支持来自社区的大量呈现请求，主要是呈现表格的能力. 我们选择了一项新服务电子渲染服务作为合适的替代品. 我们的下一步是使用电子渲染服务复制OCG提供的功能. 下面，我们将描述我们已经确定的必要功能的主要部分. 我们想邀请谈谈所提供的清单中遗漏的内容或多余内容. 我们还想强调我们未来的PDF渲染计划，以收集初步反馈.

Known Issues

 * There is currently a bug within Firefox (upstream) that affects the styling of infoboxes displayed across multiple pages. Progress from Mozilla can be tracked here: https://bugzilla.mozilla.org/show_bug.cgi?id=688556.

用户群
下表显示了在超过6小时的时间段中使用“下载为PDF”服务的流量示例. 流量按操作系统（OS）、浏览器和浏览器主要版本（例如Windows 7，Chrome v61.*）进行细分. 请注意，我们的大部分流量似乎来自基于Windows的计算机.

当前功能要求
以下是单篇文章PDF和书籍的PDF呈现的当前要求列表. 与当前实现不同的要求以粗体显示.

历史

 * 从维基百科页面呈现PDF文章和书籍由名为OCG的服务处理. 通过书籍创建者呈现“书籍”时，它使用Collection扩展中嵌入的OCG. OCG有多个问题，尤其是表格.
 * 确定了OCG的多个问题，包括社区对OCG无法呈现表格的投诉.
 * 在德语社区技术愿望清单上，表格的渲染排名第9.
 * 德国分会开始研究PDF中的解决方案，并介绍了Electron. 他们计划与OCG一起运行，而不是替换它.
 * 在维基媒体德国公司致力于电子服务的同时，维基媒体基金会OCG服务的负责维护者得出的结论是，必须更换OCG.
 * WMF阅读小组接管PDF长期维护的责任，开始计划在所有项目中实施表格渲染.
 * 阅读团队发起社区咨询，收集有关Electron的反馈.
 * 阅读基础设施和Web团队开始确定将OCG功能移植到Electron服务所需的工作范围.

咨询后更新
我们于2017年6月初就PDF呈现器的当前实施情况展开了咨询. 在审核了咨询回复后，我们发表了以下意见：



We launched a consultation on the current implementation of the PDF renderer in early June, 2017. After reviewing the consultation responses, we have made the following observations:


 * 大量用户更喜欢双列格式的单列格式
 * 喜欢双列格式的用户强调他们的偏好基于双列的样式和外观. 在单列选项中打印PDF时，一些用户还表达了对字体大小和浪费纸张的担忧
 * 发出以下功能要求：
 * 功能超链接
 * 日期和网址，'此网页从[网址]下载[日期]'
 * 可自定义的布局，标题，TOC的CSS
 * 2列格式的选项
 * 包含/排除图像版本
 * 可修改的利润率
 * 按部分打印，允许您删除引用、不需要的段落、索引等
 * 允许可配置的文本大小

根据反馈，我们将以下内容纳入我们的新打印样式：


 * 超链接
 * 条目信息
 * 较小的字体和书籍样式

上述请求的其余部分将推迟到PDF渲染器的第二次迭代，我们计划在其中构建一个允许自定义可用选项的设置模式.

提案
下面是界定PDF渲染所需的功能的范围的提案：

The following is a proposal for the scope of functionality necessary for PDF rendering:


 * 使用侧栏中的“下载为PDF”链接将单个文章呈现为PDF
 * 使用Book Creator工具将多篇文章呈现为PDF
 * 所有文章都将包含文字和图片的归属地
 * 渲染的所有PDF都可以打印表格
 * 用户将能够自定义其PDF格式（可选）

设计
新的PDF样式将被设计用于提高可读性. 基于社区反馈和定性或定量测试，可以为书籍创建者和/或单个PDF构建对2列布局的支持.

The new PDF styles will be designed for increased readability. Based on community feedback and qualitative or quantitative testing, support for a 2-column layout may be built for the book creator and/or for individual PDFs.

开发和部署路线图
以下是开发和部署路线图的概述，它可能会改变.

The following is a rough outline of the development and deployment roadmap. It is subject to change.


 * 1) 2017年4~5月：
 * 2) Reading团队为上述功能构建后端支持
 * 3) 在扩展或缩小提议的功能方面，咨询社区
 * 4) 为造型进行定性测试
 * 5) 2017年6~7月：
 * 6) 实施了新的风格
 * 7) 首次迭代与OCG一起在所有项目上启动，并对性能进行了比较
 * 8) 基于协商和确定的边缘情况的迭代
 * 9) 2017年8~9月：
 * 10) 必要时进行其他更改
 * 11) 2017年10月
 * 12) 在没有OCG的情况下在所有项目上启动了第二次迭

单篇文章

 * 通过选择“下载为PDF”链接，将创建单篇文章的PDF


 * A PDF for a single article will be created by selecting the "Download as PDF" link
 * 选择“下载为PDF”后，将生成PDF文件. 要下载该文件，用户将选择“下载文件链接”
 * 每个PDF文件将包含以下内容：
 * 文章标题和文字
 * 資訊框 （如果有）
 * 表格s （如果有）
 * 单列布局
 * 頁碼
 * 所有文章图片和标题
 * 链接到文章链接的页面（蓝色链接和外部链接）
 * 文本和图像源，贡献者和许可证

Phabricator Tracking
All PDF-related changes including sunsetting OCG, replacing the Electron PDF renderer, and any updates to books or the collections extension are tracked under the phabricator project Proton. The project page will display any recent updates for all tasks related to PDFs.

2017年10月提供的功能
注意：目前不会对当前的图书创建者工作流程进行任何更改

Functionality available in October, 2017
Note: no changes will be made to the current book creator workflow at this time


 * 用户将通过选择“创建书籍”来启动图书创建者
 * 这将导航到当前的图书创建页面
 * 要下载图书，用户将从图书页面选择“下载”链接
 * 用户只能下载PDF格式的图书
 * 书籍将包含单篇文章格式的所有元素以及：
 * 圖書標題頁面
 * 书中每篇文章的参考文献将在本文末尾出现
 * 每个条目将出现在新页面上
 * 文本和图像源，贡献者和许可证的单个部分，包含所有文章的收集贡献

2017年11月至12月期间提供的功能

 * 书籍将包含带有页码的目录
 * 从目录中选择一个部分将导航用户到书中的相应部分

将更新书籍样式以提高可读性

Alternative
There is an alternative way of exporting MediaWiki to LaTeX, PDF, ODT and EPUB:

http://mediawiki2latex.wmflabs.org/

The computational resources on the server are limited.

If you run Ubuntu Linux and want results faster, you can install the m2l-pyqt or mediawiki2latex packages.

__INDEX__