我想在我使用C#中的代碼自動創建的Word文檔上設置邊距。從C#設置Word 2010文檔邊距
我已經開始使用ActiveDocument.TopMargin =
的過程,但我找不到類似VB Word.InchesToPoint(.5)
的C#代碼的任何幫助,將不勝感激
我想在我使用C#中的代碼自動創建的Word文檔上設置邊距。從C#設置Word 2010文檔邊距
我已經開始使用ActiveDocument.TopMargin =
的過程,但我找不到類似VB Word.InchesToPoint(.5)
的C#代碼的任何幫助,將不勝感激
你必須讓Word應用程序的實例:
Word.Application oWord = new Word.Application();
oWord.InchesToPoint((float)0.5);
請參閱參考資料: http://msdn.microsoft.com/en-us/library/ff197549.aspx
有時最簡單的方法有效。這行代碼解決了這個問題
oWord.ActiveDocument.PageSetup.TopMargin = (float)50;
您可以使用Word應用程序對象的InchesToPoints方法是這樣的:
Word.Application wrdApplication = new Word.Application();
Word.Document wrdDocument;
wrdApplication.Visible = true;
wrdDocument = wrdApplication.Documents.Add();
wrdDocument.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape;
wrdDocument.PageSetup.TopMargin = wrdApplication.InchesToPoints(0.5f);
wrdDocument.PageSetup.BottomMargin = wrdApplication.InchesToPoints(0.5f);
wrdDocument.PageSetup.LeftMargin = wrdApplication.InchesToPoints(0.5f);
wrdDocument.PageSetup.RightMargin = wrdApplication.InchesToPoints(0.5f);
或者,如果你願意,你可以使自己的...
private float InchesToPoints(float fInches)
{
return fInches * 72.0f;
}
它可以用於這樣的事情:
Word.Application wrdApplication = new Word.Application();
Word.Document wrdDocument;
wrdDocument = wrdApplication.Documents.Add();
wrdDocument.PageSetup.Orientation = Word.WdOrientation.wdOrientLandscape;
wrdDocument.PageSetup.TopMargin = InchesToPoints(0.5f); //half an inch in points
wrdDocument.PageSetup.BottomMargin = InchesToPoints(0.5f);
wrdDocument.PageSetup.LeftMargin = InchesToPoints(0.5f);
wrdDocument.PageSetup.RightMargin = InchesToPoints(0.5f);
wrdApplication.Visible = true;
Word在其間距中每英寸使用72個點。
你可能會考慮解釋一下這個答案(例如每英寸72點是測量)。 – theMayer 2016-03-03 22:51:18
感謝您的迴應,但我遵循指示,但它沒有在C#中工作得到說明說最好的重載方法匹配Microsoft.Office.Interop.Word._Application.InchesToPoint(float)有一些無效的爭論。 – RCam 2012-01-18 02:04:34
您是否嘗試將您的價值轉換爲浮動值。看到我更新的答案。 – gideon 2012-01-18 02:57:02