2012-04-24 11 views
0

私はMVC3 C#.Net Webアプリケーションを持っています。 Aspose.Wordsを使用してMS Word文書を作成しています。ドキュメントにテーブルを含めないという要件があります。しかし、文書のいくつかの行では、テキストの幅に応じてテキストの位置揃えが正しく調整されません。たとえば
Aspose.Words ...ピクセル単位のテキストの計算

これはこれではない

Proposal Name: My Prop   Date:04/24/2012 

それは、テキストの最初のビットの幅に基づいて

Proposal Name: My Prop    Date:04/24/2012 

でなければなりませんん

Proposal Name: My Proposal   Date:04/24/2012 

よさそうです、私はピクセルで幅を計算する必要があります(私は思う)セサリー。

どのようにすればいいですか?

答えて

1

あなたのフォントに基づいて文字列の幅をピクセル単位で与えるGraphics.MeasureString関数を使用することができます。詳細はHere

乾杯、

エサン次のコード例では、ページの左上隅に現在のエンティティの相対的な境界の矩形を返します

0

を行きます。

Document doc = new Document(MyDir + "in.docx"); 

LayoutCollector layoutCollector = new LayoutCollector(doc); 
LayoutEnumerator layoutEnumerator = new LayoutEnumerator(doc); 

foreach (Paragraph para in doc.GetChildNodes(NodeType.Paragraph, true)) 
{ 
    var renderObject = layoutCollector.GetEntity(para); 
    layoutEnumerator.Current = renderObject; 
    RectangleF location = layoutEnumerator.Rectangle; 
    Console.WriteLine(location); 
} 

SRC:https://www.aspose.com/community/forums/thread/541215/replace-run-text-with-string-of-spaces-of-same-pixel-length.aspx

関連する問題