5

私は新聞のオーサリングシステムを作成しています。今日、私はAspose.Wordsライブラリを使用して、入力として他の多くのドキュメントに基づいて、出力としてDocx形式を使用して新聞を生成しています。

基本的な考え方は、多くの記事ドキュメントをリストにロードしてから、新聞で最終的なdocxを生成することです。

列内のテキスト(画像と表を含む)の合計の高さを取得する必要があります。Aspose.WordsのようなライブラリはDOMのようなDocx形式を処理するため、テキストが列内にどのように配置されるかを知る方法はありません。すると本当の身長がわかりません。

私たちはこの高さを得るために独自の方法で取り組んできました。System.Drawing.Graphics名前空間のMeasureString()関数を使用しています。文字列で使用される幅と高さを返し、列内で使用される行数(およびポイントまたはインチ)を見積もることができます。

しかし、それは非常に貧弱であり、より適切な解決策が必要です。この高さを取得するためにOpenXMLSDKを使用することを考えています。

Aspose.Wordsはそれを知る方法をサポートしておらず、すべてのRenderクラスはライブラリにプライベートです。

この高さを得る新しい方法を考えられますか?

ありがとう、ダニエル・コッホ

4

3 に答える 3

1

このプロパティは、Open XMLまたはSDK(またはVBA / VSTO)では公開されていません。高さがどの程度正確に計算されるかは、どのドキュメントにも記載されていません。おそらくあなたがそれをしている方法は先に進む方法です。

別の可能な方法は、TextColumnsをテーブル列/セルに配置してその高さを取得することです(ただし、セル内に2つのテキスト列があり、最初の列がセルを上から下に「埋める」場合、2番目の列は埋めない場合は2番目のサイズを計算できないという問題がまだあります)。

于 2010-02-07T01:32:56.980 に答える
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を使用しようとしています。オートメーション..

よろしく、

ブルーノ

于 2010-02-24T20:28:47.423 に答える
0

答えてくれてありがとう。

Aspose.WordsをPDFLibに変更して終了しました。これで、Postscriptポイントを使用してページや列などを制御できます。

Aspose.Wordsはコンテンツのインポートのみを目的としていますが、ニュースレターを印刷することを示すものではありません。

于 2010-02-25T12:06:42.293 に答える