[英]Autosize of TextFrame for a specific table cell in PowerPoint presentation programmatically
我遇到了下一種情況。 有一些變量:
PowerPoint.Application objApp;
Microsoft.Office.Interop.PowerPoint.Shape oShape;
PowerPoint.Presentations objPresSet;
PowerPoint._Presentation objPres;
PowerPoint.Slides objSlides;
PowerPoint._Slide objSlide;
Microsoft.Office.Interop.PowerPoint.Shape oShape;
我正在創建PowerPoint 2010幻燈片演示文稿:
objApp = new PowerPoint.Application();
objApp.Visible = MsoTriState.msoTrue;
objPresSet = objApp.Presentations;
objPres = objPresSet.Open(strTemplate, MsoTriState.msoFalse, MsoTriState.msoTrue, MsoTriState.msoTrue);
objSlides = objPres.Slides;
在這里,我正在創建一張幻燈片:
objSlide = objSlides.Add(2, PowerPoint.PpSlideLayout.ppLayoutTitleOnly);
對於下一步,我將表格添加到幻燈片中:
int rows = 4;
int cells = 10;
oShape = objSlide.Shapes.AddTable(rows, cells, 10, 10, 400, 450);
而且我對添加到特定單元格的文本沒有任何問題:
oShape.Table.Cell(1, 1).Shape.TextFrame.TextRange.Text = "Dummy Text";
但是,單元格不想拉伸。 我試圖用AutoSize
屬性修改TextFrame
:
oShape.Table.Cell(1, 1).Shape.TextFrame.AutoSize = MsoAutoSize.msoAutoSizeTextToFitShape;
在這里,我得到了“ ArgumentException”:
指定的值超出范圍。
有什么想法為什么會發生嗎? 如果否,是否還有另一種方法可以擴展表格單元格?
因此,多虧了Steve Rindsberg,解決方案才得以實現:
oShape.Table.Columns._Index(2).Width = 12;
多數民眾贊成在表格中的列大小改變得很好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.