【发布时间】:2018-02-28 10:05:33
【问题描述】:
我正在创建一个报纸创作系统。今天我正在使用 Aspose.Words 库来生成报纸,使用 Docx 格式作为输出,基于许多其他文档作为输入。
基本思路是将大量文章文档加载到一个List中,然后生成一个带有报纸的最终docx。
我们需要获取列内文本(包括图像和表格)的总高度。由于像 Aspose.Words 这样的库处理像 DOM 这样的 Docx 格式,因此无法知道文本将如何在列内排列。那我就无法知道真实的高度了。
我们以自己的方式努力达到这个高度。我正在使用 System.Drawing.Graphics 命名空间中的 MeasureString() 函数。它返回字符串使用的宽度和高度,我可以估计它将在列内使用多少行(以及点或英寸)。
但它很差,我们需要一个更体面的解决方案。我们正在考虑使用 OpenXML SDK 来获得这个高度,可以吗?
Aspose.Words 不支持了解它的方法,并且所有 Render 类都是库私有的。
你能想出一种新方法来达到这个高度吗?
谢谢, 丹尼尔·科赫
【问题讨论】:
-
自此问题发布以来,他们向 Aspose.Words 添加了一项功能——它现在公开了一些布局引擎和更多渲染内容。您可以获取页码并渲染到图形对象和图像等。不过还不确定如何获取对象的高度。