2011-06-24 17 views
4

雖然我懷疑這一點,如果我在C#中使用的OpenXML SDK打開一個Word文檔,並添加一些信息,有沒有什麼辦法,我看它是否仍然適合一個頁?OpenXML的:無論如何,看是否有Word文檔適合一個頁面

如果它不能減小我添加的特定項目的字體大小,直到它適合。

,如果我有關頁面尺寸邊距和所有有電流的大小,我可以寫這個算法。

+1

我不知道的東西了OpenXML SDK已經爲你做了這件事,但正如你所說,它可以完成。對於簡單的文本來說不是太糟糕;如果有圖像和表格,則會更糟;但在一般情況下是複雜的。 – JasonPlutext

+0

沒有圖像,但這主要是基於表中可變數量的項目。 –

回答

1

我碰到這個例子跑在其他網站上,不知道它會在你的情況下工作,因爲它需要Office PIA ...

var app = new Word.Application(); 
var doc = app.Documents.Open("path/to/file"); 
doc.Repaginate() 

var pageNumber = doc.BuiltInDocumentProperties("Number of Pages").Value as int; 
+0

感謝您的意見。不知道PIA代表什麼,但似乎你實際上必須運行一個字的應用程序,這是一個不。我想我必須看看OPenXml命名空間中的Validate對象,看看它是否可以做類似的事情。 –

+1

哦,對不起。 PIA是主互操作程序集。它們由Microsoft提供,以幫助自動化Office應用程序。我認爲這個網站將幫助你導航Open XML文件並找到頁面節點:http://rmanimaran.wordpress.com/2010/08/03/programatically-get-count-pagesslidessheet-in-microsoft-wordpowerpointexcel-2007/ –

+0

問題在於docProps/app.xml可能是由Microsoft word生成的,如果我在C#中創建docx,則不包含docProps/app.xml。 –

相關問題