- VSTO
- Spire.Presentation
- Download Sample Code
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Xml.Linq; using PowerPoint = Microsoft.Office.Interop.PowerPoint; using Office = Microsoft.Office.Core; namespace VSTO { public partial class ThisAddIn { private void ThisAddIn_Startup(object sender, System.EventArgs e) { //Create empty presentation PowerPoint.Presentation ppt = this.Application.Presentations.Add(); //Add a blank slide PowerPoint.Slide slide = ppt.Slides.Add(1, PowerPoint.PpSlideLayout.ppLayoutBlank); //Add table to slide PowerPoint.Shape shape = slide.Shapes.AddTable(6, 6, 0, 0, 800, 400); PowerPoint.Table table = shape.Table; //Loop the table to fill text for (int i = 1; i <= table.Rows.Count; i++) { for (int j = 1; j <= table.Columns.Count; j++) { PowerPoint.TextFrame tf = table.Cell(i, j).Shape.TextFrame; tf.TextRange.Text = "Row" + i.ToString() + "Col" + j.ToString(); tf.TextRange.ParagraphFormat.Alignment = PowerPoint.PpParagraphAlignment.ppAlignCenter; } } //Save the file ppt.SaveAs("Table.pptx"); } private void ThisAddIn_Shutdown(object sender, System.EventArgs e) { } #region VSTO generated code /// <summary> /// Required method for Designer support - do not modify /// the contents of this method with the code editor. /// </summary> private void InternalStartup() { this.Startup += new System.EventHandler(ThisAddIn_Startup); this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown); } #endregion } }
using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Spire.Presentation; namespace Spire.Presentation { class Program { static void Main(string[] args) { //Create PPT document Presentation ppt = new Presentation(); //Add new table to PPT Double[] widths = new double[] {100,100,100,100,100,100}; Double[] heights = new double[] { 50,50,50,50,50,50 }; ITable table = ppt.Slides[0].Shapes.AppendTable(0,0, widths, heights); //Set the style of table table.StylePreset = TableStylePreset.LightStyle1Accent2; //Loop the table to fill data for (int i = 0; i < heights.Length; i++) for (int j = 0; j < widths.Length; j++) { table[i, j].TextFrame.Text = "Row"+i.ToString()+"Col"+j.ToString(); table[j, i].TextFrame.Paragraphs[0].TextRanges[0].LatinFont = new TextFont("Arial Narrow"); table[i, j].TextFrame.Paragraphs[0].Alignment = TextAlignmentType.Center; } //Save and Launch ppt.SaveToFile("Table.pptx", FileFormat.Pptx2010); System.Diagnostics.Process.Start("Table.pptx"); } } }