翻譯|使用教程|編輯:李顯亮|2021-07-06 11:15:14.207|閱讀 456 次
概述:在這篇文章中,將了解如何以編程方式創建此類演示文稿,還有如何使用 C# 創建包含文本、表格、圖像和圖表的 PPTX 演示文稿。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
MS PowerPoint 演示文稿允許您創建包含文本、圖像、圖表、動畫和其他元素的幻燈片。各種附加格式選項可讓您的演示文稿更具吸引力。在這篇文章中,將了解如何以編程方式創建此類演示文稿,以及將學習如何使用 C# 創建包含文本、表格、圖像和圖表的 PPTX 演示文稿。
Aspose.Slides for .NET是一個演示操作 API,允許您從 .NET 應用程序中創建和操作 PowerPoint 文檔。API 提供了實現基本和高級 PowerPoint 自動化功能所需的幾乎所有可能的功能。
>>你可以點擊這里下載Aspose.Slides 最新版測試體驗。
讓我們首先使用 Aspose.Slides for .NET 創建一個空的 PowerPoint 演示文稿。以下是執行此操作的步驟。
以下代碼示例展示了如何在 C# 中創建 PowerPoint 演示文稿。
// Instantiate a Presentation object that represents a presentation file using (Presentation presentation = new Presentation()) { // Get the first slide ISlide slide = presentation.Slides[0]; // Add content to slide... // Save presentation presentation.Save("NewPresentation.pptx", SaveFormat.Pptx); }
無需付出額外的努力即可打開現有的 PowerPoint 演示文稿。只需將 PPTX 文件的路徑提供給Presentation類的構造函數即可完成。以下代碼示例展示了如何打開現有的 PPTX 演示文稿。
// Opening the presentation file by passing the file path to the constructor of Presentation class Presentation pres = new Presentation("OpenPresentation.pptx"); // Printing the total number of slides in the presentation System.Console.WriteLine(pres.Slides.Count.ToString());
創建演示文稿后,您可以開始向其中添加幻燈片。以下是使用 Aspose.Slides for .NET 在演示文稿中添加幻燈片的步驟。
以下代碼示例展示了如何使用 C# 在 PowerPoint 演示文稿中添加幻燈片。
// Instantiate Presentation class that represents the presentation file using (Presentation pres = new Presentation()) { // Instantiate SlideCollection calss ISlideCollection slds = pres.Slides; for (int i = 0; i < pres.LayoutSlides.Count; i++) { // Add an empty slide to the Slides collection slds.AddEmptySlide(pres.LayoutSlides[i]); } // Save the PPTX file to the Disk pres.Save("EmptySlide_out.pptx", SaveFormat.Pptx); }
現在我們可以向 PowerPoint 演示文稿中的幻燈片添加內容。讓我們首先使用以下步驟向幻燈片添加一段文本。
以下代碼示例展示了如何使用 C# 向演示文稿中的幻燈片添加文本。
// Instantiate PresentationEx// Instantiate PresentationEx using (Presentation pres = new Presentation()) { // Get the first slide ISlide sld = pres.Slides[0]; // Add an AutoShape of Rectangle type IAutoShape ashp = sld.Shapes.AddAutoShape(ShapeType.Rectangle, 150, 75, 150, 50); // Add TextFrame to the Rectangle ashp.AddTextFrame(" "); // Accessing the text frame ITextFrame txtFrame = ashp.TextFrame; // Create the Paragraph object for text frame IParagraph para = txtFrame.Paragraphs[0]; // Create Portion object for paragraph IPortion portion = para.Portions[0]; // Set Text portion.Text = "Aspose TextBox"; // Save the presentation to disk pres.Save("presentation.pptx", Aspose.Slides.Export.SaveFormat.Pptx); }
Aspose.Slides for .NET 提供了一種在演示文檔中創建表格的簡單方法。以下是它的步驟。
以下代碼示例展示了如何在 PowerPoint 演示文稿的幻燈片中創建表格。
// Instantiate Presentation class that represents PPTX file Presentation pres = new Presentation(); // Access first slide ISlide sld = pres.Slides[0]; // Define columns with widths and rows with heights double[] dblCols = { 50, 50, 50 }; double[] dblRows = { 50, 30, 30, 30, 30 }; // Add table shape to slide ITable tbl = sld.Shapes.AddTable(100, 50, dblCols, dblRows); // Set border format for each cell for (int row = 0; row < tbl.Rows.Count; row++) { for (int cell = 0; cell < tbl.Rows[row].Count; cell++) { tbl.Rows[row][cell].CellFormat.BorderTop.FillFormat.FillType = FillType.Solid; tbl.Rows[row][cell].CellFormat.BorderTop.FillFormat.SolidFillColor.Color = Color.Red; tbl.Rows[row][cell].CellFormat.BorderTop.Width = 5; tbl.Rows[row][cell].CellFormat.BorderBottom.FillFormat.FillType = (FillType.Solid); tbl.Rows[row][cell].CellFormat.BorderBottom.FillFormat.SolidFillColor.Color= Color.Red; tbl.Rows[row][cell].CellFormat.BorderBottom.Width =5; tbl.Rows[row][cell].CellFormat.BorderLeft.FillFormat.FillType = FillType.Solid; tbl.Rows[row][cell].CellFormat.BorderLeft.FillFormat.SolidFillColor.Color =Color.Red; tbl.Rows[row][cell].CellFormat.BorderLeft.Width = 5; tbl.Rows[row][cell].CellFormat.BorderRight.FillFormat.FillType = FillType.Solid; tbl.Rows[row][cell].CellFormat.BorderRight.FillFormat.SolidFillColor.Color = Color.Red; tbl.Rows[row][cell].CellFormat.BorderRight.Width = 5; } } // Merge cells 1 & 2 of row 1 tbl.MergeCells(tbl.Rows[0][0], tbl.Rows[1][1], false); // Add text to the merged cell tbl.Rows[0][0].TextFrame.Text = "Merged Cells"; // Save PPTX to Disk pres.Save("table.pptx", SaveFormat.Pptx);
以下是使用 C# 在 PowerPoint 演示文稿中添加圖表的步驟。
以下代碼示例展示了如何使用 C# 在演示文稿中添加圖表。
// Instantiate Presentation class that represents PPTX file Presentation pres = new Presentation(); // Access first slide ISlide sld = pres.Slides[0]; // Add chart with default data IChart chart = sld.Shapes.AddChart(ChartType.ClusteredColumn, 0, 0, 500, 500); // Setting chart Title // Chart.ChartTitle.TextFrameForOverriding.Text = "Sample Title"; chart.ChartTitle.AddTextFrameForOverriding("Sample Title"); chart.ChartTitle.TextFrameForOverriding.TextFrameFormat.CenterText = NullableBool.True; chart.ChartTitle.Height = 20; chart.HasTitle = true; // Set first series to Show Values chart.ChartData.Series[0].Labels.DefaultDataLabelFormat.ShowValue = true; // Setting the index of chart data sheet int defaultWorksheetIndex = 0; // Getting the chart data worksheet IChartDataWorkbook fact = chart.ChartData.ChartDataWorkbook; // Delete default generated series and categories chart.ChartData.Series.Clear(); chart.ChartData.Categories.Clear(); int s = chart.ChartData.Series.Count; s = chart.ChartData.Categories.Count; // Adding new series chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 1, "Series 1"), chart.Type); chart.ChartData.Series.Add(fact.GetCell(defaultWorksheetIndex, 0, 2, "Series 2"), chart.Type); // Adding new categories chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 1, 0, "Caetegoty 1")); chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 2, 0, "Caetegoty 2")); chart.ChartData.Categories.Add(fact.GetCell(defaultWorksheetIndex, 3, 0, "Caetegoty 3")); // Take first chart series IChartSeries series = chart.ChartData.Series[0]; // Now populating series data series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 1, 20)); series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 1, 50)); series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 1, 30)); // Setting fill color for series series.Format.Fill.FillType = FillType.Solid; series.Format.Fill.SolidFillColor.Color = Color.Red; // Take second chart series series = chart.ChartData.Series[1]; // Now populating series data series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 1, 2, 30)); series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 2, 2, 10)); series.DataPoints.AddDataPointForBarSeries(fact.GetCell(defaultWorksheetIndex, 3, 2, 60)); // Setting fill color for series series.Format.Fill.FillType = FillType.Solid; series.Format.Fill.SolidFillColor.Color = Color.Green; // First label will be show Category name IDataLabel lbl = series.DataPoints[0].Label; lbl.DataLabelFormat.ShowCategoryName = true; lbl = series.DataPoints[1].Label; lbl.DataLabelFormat.ShowSeriesName = true; // Show value for third label lbl = series.DataPoints[2].Label; lbl.DataLabelFormat.ShowValue = true; lbl.DataLabelFormat.ShowSeriesName = true; lbl.DataLabelFormat.Separator = "/"; // Save presentation with chart pres.Save("AsposeChart_out.pptx", SaveFormat.Pptx);
如果你想試用Aspose的全部完整功能,可 聯系在線客服獲取30天臨時授權體驗。
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn