首页 文章

获取MS Word中渲染文本和图像的高度

提问于
浏览
5

我正在创建一个报纸创作系统 . 今天我使用Aspose.Words库来生成报纸,使用Docx格式作为输出,基于许多其他文档作为输入 .

基本思想是将大量文章文档加载到List中,然后用报纸生成最终的docx .

我们需要在列内获得文本(带图像和表格)的总高度 . 由于像Aspose.Words这样的库处理像DOM这样的Docx格式,因此无法知道如何在列内部排列文本 . 然后我无法知道真正的身高 .

我们以自己的方式努力获得这个高度 . 我正在使用System.Drawing.Graphics命名空间中的MeasureString()函数 . 它返回字符串使用的宽度和高度,我可以估计它将在列中使用多少行(和点或英寸) .

但它非常糟糕,我们需要一个更体面的解决方案 . 我们正在考虑使用OpenXML SDK来获得这个高度,是吗?

Aspose.Words不支持一种知道它的方法,所有Render类都是库的私有 .

你能想出一种获得这种高度的新方法吗?

谢谢Daniel Koch

3 回答

  • 1

    此属性未在Open XML或SDK(或VBA / VSTO)中公开 . 高度的计算方法不在任何文档中 . 可能你正在做的方式是一种继续的方式 .

    另一种可能的方法是将TextColumns放在表格列/单元格中并获取该高度(但如果它是单元格中的两个文本列,第一个“填充”单元格从上到下而第二个不填充,则仍然会有无法计算第二个大小的问题 .

  • 0

    我有几乎相同的问题..但在我的情况下,我正在处理测试中的问题..现在,我们正在使用RTF来构建问题和RichTextBox测量高度..就像那样(http://blogs.technet.com/david_bennett/archive/2005/04/06/403402.aspx)..而且我想迁移到DOCX ..但仍然没有运气如何用表和图像来衡量问题.. :-(现在我正在研究文件成员(http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word._document_members.aspx),试图做使用Word Automation ..

    问候,

    布鲁诺

  • 0

    谢谢大家的回答 .

    我完成了将Aspose.Words更改为PDFLib . 现在我可以使用Postscript Points控制页面,列或任何内容 .

    我们只将Aspose.Words保留在内容导入中,但它并不表示打印简报 .

相关问题