如何使用C#互操作库在PowerPoint中重新调整表格大小

本文关键字:调整 表格 新调整 互操作 何使用 PowerPoint | 更新日期: 2023-09-27 18:22:11

我正在使用C#动态创建PowerPoint,我需要创建一个具有可变行和列的表(取决于我正在处理的数据)。

PowerPoint.Application pptObj = new PowerPoint.Application();
PowerPoint.Presentations presObj = pptObj.Presentation;
PowerPoint.Presentation pObj = presObj.Add(MsoTriState.msoTrue);
PowerPoint.Slides objSlides;
PowerPoint.Slide objSlide;
PowerPoint.Shapes shapes;
float pHeight = pObj.PageSetup.SlideHeight;
float pWidth = pObj.PageSetup.SlideWidth;
objSlide = objSlides.Add(1,PowerPoint.PpSlideLayout.ppLayoutTitleOnly);
shapes = objSlide.shapes;
shapes.AddTable(16,7,20,100,pWidth - 40,pHeight - 150);

我可能留下了其他代码的详细信息。问题是桌子没有放在幻灯片里。它走出去了。我无法重新缩放表格。有没有其他我可以调整表格大小并将其放入幻灯片中,而不考虑行和列的数量?

如何使用C#互操作库在PowerPoint中重新调整表格大小

表格的增长是为了容纳它们所容纳的文本量;不能使单个行收缩到低于将其文本保持在当前字体大小+前导+边距等所需的高度。

因此,你的问题的答案可能是这样的:

创建您的表将要添加到表中的所有行、列和文本添加到您想要的最大大小的文本中。

然后循环:

减小文本大小和/或间距,然后减小每行的高度,直到表格的整体大小满足您的需要。