欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C# / VB.NET 在PPT中創(chuàng)建、編輯PPT SmartArt圖形的方法詳解

 更新時間:2020年10月21日 09:14:03   作者:E-iceblue  
本文介紹通過C#和VB.NET程序代碼來創(chuàng)建和編輯PPT文檔中的SmartArt圖形。文中將分兩個操作示例來演示創(chuàng)建和編輯結(jié)果,需要的朋友可以參考下

本文介紹通過C#和VB.NET程序代碼來創(chuàng)建和編輯PPT文檔中的SmartArt圖形。文中將分兩個操作示例來演示創(chuàng)建和編輯結(jié)果。

使用工具:Spire.Presentation for .NET hotfix 5.9.5

Dll文件引用

方式1:下載包。下載后,解壓,打開Bin文件夾,根據(jù)自己用的.NET Framework選擇相應(yīng)的文件夾,如:此示例中使用的是NET4.0,即打開NET4.0文件,找到Spire.Presentation.dll文件。找到dll文件后,在vs程序中添加引用該dll。

如下引用結(jié)果:

方式2:通過Nuget搜索下載導(dǎo)入。

注:創(chuàng)建SmartArt圖形時,可創(chuàng)建80多種不同類型的圖形,編輯圖形是,可添加、刪除節(jié)點、編輯節(jié)點內(nèi)容、給節(jié)點內(nèi)容設(shè)置超鏈接(包括鏈接到網(wǎng)頁、鏈接到幻燈片)

示例1. 創(chuàng)建PPT SmartArt圖形

using Spire.Presentation;
using Spire.Presentation.Diagrams;


namespace AddSmartArt
{
  class Program
  {
    static void Main(string[] args)
    {
      //實例化Presentation對象
      Presentation ppt = new Presentation();

      //設(shè)置幻燈片大小
      ppt.SlideSize.Type = SlideSizeType.Screen16x9;

      //添加組織結(jié)構(gòu)圖類型的SmartArt圖形,并指定位置、大小
      ISmartArt smartArt = ppt.Slides[0].Shapes.AppendSmartArt(100, 50, 450, 250, SmartArtLayoutType.OrganizationChart);

      //設(shè)置SmartArt的樣式和顏色
      smartArt.Style = SmartArtStyleType.IntenceEffect;
      smartArt.ColorStyle = SmartArtColorType.ColorfulAccentColors3to4;

      //移除默認的形狀(Node即代表SmartArt中的形狀)
      foreach (ISmartArtNode node in smartArt.Nodes)
      {
        smartArt.Nodes.RemoveNode(node);
      }

      //添加形狀并在其下面添加嵌套子形狀
      ISmartArtNode node1 = smartArt.Nodes.AddNode();
      ISmartArtNode node1_1 = node1.ChildNodes.AddNode();
      ISmartArtNode node1_1_1 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_2 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_3 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_4 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_5 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_6 = node1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_1_1 = node1_1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_1_2 = node1_1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_1_3 = node1_1_1.ChildNodes.AddNode();
      ISmartArtNode node1_1_3_1 = node1_1_3.ChildNodes.AddNode();
      ISmartArtNode node1_1_3_2 = node1_1_3.ChildNodes.AddNode();
      ISmartArtNode node1_1_6_1 = node1_1_6.ChildNodes.AddNode();
      ISmartArtNode node1_1_6_2 = node1_1_6.ChildNodes.AddNode();
      ISmartArtNode node1_1_6_3 = node1_1_6.ChildNodes.AddNode();
      

      //在每一個形狀上添加文字
      node1.TextFrame.Text = "董事會\n" + "Board of Directors";      
      node1_1.TextFrame.Text = "總經(jīng)理\n" + "General Manager";
      node1_1_1.TextFrame.Text = "供應(yīng)部\n" + "Supply Dept.";
      node1_1_2.TextFrame.Text = "營銷部\n" + "Sales Dept.";
      node1_1_3.TextFrame.Text = "生產(chǎn)部\n" + "Productive Dept.";
      node1_1_4.TextFrame.Text = "財務(wù)部\n" + "Finance Dept.";
      node1_1_5.TextFrame.Text = "人力資源部\n" + "HR Dept.";
      node1_1_6.TextFrame.Text = "質(zhì)檢中心\n" + "Quality Center";
      node1_1_1_1.TextFrame.Text = "采購部\n" + "Purchase Dept.";
      node1_1_1_2.TextFrame.Text = "倉庫管理\n" + "Warehouse Manager";
      node1_1_1_3.TextFrame.Text = "物流部\n" + "Logistics Dept.";
      node1_1_3_1.TextFrame.Text = "生產(chǎn)車間\n" + "Production Dept.";
      node1_1_3_2.TextFrame.Text = "維修部\n" + "Maintenance Dept.";
      node1_1_6_1.TextFrame.Text = "生產(chǎn)質(zhì)量管理\n" + "Production Quality Mgt.";
      node1_1_6_2.TextFrame.Text = "生產(chǎn)安全管理\n" + "Production Safety Mgt.";
      node1_1_6_3.TextFrame.Text = "環(huán)境管理\n" + "Environmental Mgt.";
      

      //保存文檔
      ppt.SaveToFile("result.pptx", FileFormat.Pptx2013);
      System.Diagnostics.Process.Start("result.pptx");
    }
  }
}

圖形創(chuàng)建結(jié)果:

VB.NET

Imports Spire.Presentation
Imports Spire.Presentation.Diagrams


Namespace AddSmartArt
  Class Program
    Private Shared Sub Main(args As String())
      '實例化Presentation對象
      Dim ppt As New Presentation()

      '設(shè)置幻燈片大小
      ppt.SlideSize.Type = SlideSizeType.Screen16x9

      '添加組織結(jié)構(gòu)圖類型的SmartArt圖形,并指定位置、大小
      Dim smartArt As ISmartArt = ppt.Slides(0).Shapes.AppendSmartArt(100, 50, 750, 450, SmartArtLayoutType.OrganizationChart)

      '設(shè)置SmartArt的樣式和顏色
      smartArt.Style = SmartArtStyleType.IntenceEffect
      smartArt.ColorStyle = SmartArtColorType.ColorfulAccentColors3to4

      '移除默認的形狀(Node即代表SmartArt中的形狀)
      For Each node As ISmartArtNode In smartArt.Nodes
        smartArt.Nodes.RemoveNode(node)
      Next

      '添加形狀并在其下面添加嵌套子形狀
      Dim node1 As ISmartArtNode = smartArt.Nodes.AddNode()
      Dim node1_1 As ISmartArtNode = node1.ChildNodes.AddNode()
      Dim node1_1_1 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_2 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_3 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_4 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_5 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_6 As ISmartArtNode = node1_1.ChildNodes.AddNode()
      Dim node1_1_1_1 As ISmartArtNode = node1_1_1.ChildNodes.AddNode()
      Dim node1_1_1_2 As ISmartArtNode = node1_1_1.ChildNodes.AddNode()
      Dim node1_1_1_3 As ISmartArtNode = node1_1_1.ChildNodes.AddNode()
      Dim node1_1_3_1 As ISmartArtNode = node1_1_3.ChildNodes.AddNode()
      Dim node1_1_3_2 As ISmartArtNode = node1_1_3.ChildNodes.AddNode()
      Dim node1_1_6_1 As ISmartArtNode = node1_1_6.ChildNodes.AddNode()
      Dim node1_1_6_2 As ISmartArtNode = node1_1_6.ChildNodes.AddNode()
      Dim node1_1_6_3 As ISmartArtNode = node1_1_6.ChildNodes.AddNode()


      '在每一個形狀上添加文字
      node1.TextFrame.Text = "董事會" & vbLf + "Board of Directors"
      node1_1.TextFrame.Text = "總經(jīng)理" & vbLf + "General Manager"
      node1_1_1.TextFrame.Text = "供應(yīng)部" & vbLf + "Supply Dept."
      node1_1_2.TextFrame.Text = "營銷部" & vbLf + "Sales Dept."
      node1_1_3.TextFrame.Text = "生產(chǎn)部" & vbLf + "Productive Dept."
      node1_1_4.TextFrame.Text = "財務(wù)部" & vbLf + "Finance Dept."
      node1_1_5.TextFrame.Text = "人力資源部" & vbLf + "HR Dept."
      node1_1_6.TextFrame.Text = "質(zhì)檢中心" & vbLf + "Quality Center"
      node1_1_1_1.TextFrame.Text = "采購部" & vbLf + "Purchase Dept."
      node1_1_1_2.TextFrame.Text = "倉庫管理" & vbLf + "Warehouse Manager"
      node1_1_1_3.TextFrame.Text = "物流部" & vbLf + "Logistics Dept."
      node1_1_3_1.TextFrame.Text = "生產(chǎn)車間" & vbLf + "Production Dept."
      node1_1_3_2.TextFrame.Text = "維修部" & vbLf + "Maintenance Dept."
      node1_1_6_1.TextFrame.Text = "生產(chǎn)質(zhì)量管理" & vbLf + "Production Quality Mgt."
      node1_1_6_2.TextFrame.Text = "生產(chǎn)安全管理" & vbLf + "Production Safety Mgt."
      node1_1_6_3.TextFrame.Text = "環(huán)境管理" & vbLf + "Environmental Mgt."


      '保存文檔
      ppt.SaveToFile("result.pptx", FileFormat.Pptx2013)
      System.Diagnostics.Process.Start("result.pptx")
    End Sub
  End Class
End Namespace

示例2. 編輯PPT SmartArt圖形

using Spire.Presentation;
using Spire.Presentation.Diagrams;


namespace ModifySmartArt
{
  class Program
  {
    static void Main(string[] args)
    {
      //加載PPT幻燈片文檔
      Presentation ppt = new Presentation();
      ppt.LoadFromFile("test.pptx");

      //獲取SmartArt圖形的節(jié)點集合
      ISmartArt smartart = ppt.Slides[0].Shapes[0] as ISmartArt;
      ISmartArtNodeCollection nodes = smartart.Nodes;

      //更改節(jié)點內(nèi)容
      nodes[1].TextFrame.Text = "新修改的節(jié)點內(nèi)容";

      //添加超鏈接到節(jié)點
      nodes[2].Click = new ClickHyperlink("https://baike.baidu.com/");//添加指向網(wǎng)頁的超鏈接
      nodes[3].Click = new ClickHyperlink(ppt.Slides[1]);//添加指向指定幻燈片的超鏈接

      //添加節(jié)點
      ISmartArtNode newnode = nodes[5].ChildNodes.AddNode();
      newnode.TextFrame.Text = "新添加的節(jié)點內(nèi)容";

      //刪除節(jié)點
      //nodes[0].ChildNodes[3].ChildNodes.RemoveNodeByPosition(0); 

      //保存到本地并打開
      ppt.SaveToFile("output.pptx", FileFormat.Pptx2010);
      System.Diagnostics.Process.Start("output.pptx");
    }
  }
}

添加超鏈接后,注意要在幻燈片播放下才可見超鏈接添加效果:

VB.NET

Imports Spire.Presentation
Imports Spire.Presentation.Diagrams


Namespace ModifySmartArt
  Class Program
    Private Shared Sub Main(args As String())
      '加載PPT幻燈片文檔
      Dim ppt As New Presentation()
      ppt.LoadFromFile("test.pptx")

      '獲取SmartArt圖形的節(jié)點集合
      Dim smartart As ISmartArt = TryCast(ppt.Slides(0).Shapes(0), ISmartArt)
      Dim nodes As ISmartArtNodeCollection = smartart.Nodes

      '更改節(jié)點內(nèi)容
      nodes(1).TextFrame.Text = "新修改的節(jié)點內(nèi)容"

      '添加超鏈接到節(jié)點
      nodes(2).Click = New ClickHyperlink("https://baike.baidu.com/")
      '添加指向網(wǎng)頁的超鏈接
      nodes(3).Click = New ClickHyperlink(ppt.Slides(1))
      '添加指向指定幻燈片的超鏈接
      '添加節(jié)點
      Dim newnode As ISmartArtNode = nodes(5).ChildNodes.AddNode()
      newnode.TextFrame.Text = "新添加的節(jié)點內(nèi)容"

      '刪除節(jié)點
      'nodes[0].ChildNodes[3].ChildNodes.RemoveNodeByPosition(0); 

      '保存到本地并打開
      ppt.SaveToFile("output.pptx", FileFormat.Pptx2010)
      System.Diagnostics.Process.Start("output.pptx")
    End Sub
  End Class
End Namespace

到此這篇關(guān)于C# / VB.NET 在PPT中創(chuàng)建、編輯PPT SmartArt圖形的方法詳解的文章就介紹到這了,更多相關(guān)C# PPT SmartArt圖形內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C#的編碼規(guī)范詳細說明

    C#的編碼規(guī)范詳細說明

    編碼規(guī)范是老生常談的問題,現(xiàn)在再看代碼規(guī)范可能不會再去在意變量,控件的命名方法等,而是更加關(guān)注代碼的實用性
    2013-08-08
  • C#基礎(chǔ)知識之FileStream

    C#基礎(chǔ)知識之FileStream

    C#中FileStream對象表示在磁盤或網(wǎng)絡(luò)路徑上指向文件的流??梢允褂肍ileStream 類對文件系統(tǒng)上的文件進行讀取、寫入、打開、關(guān)閉等。下面我們就來詳細探討下
    2016-07-07
  • C#調(diào)用第三方工具完成FTP操作

    C#調(diào)用第三方工具完成FTP操作

    這篇文章介紹了C#調(diào)用第三方工具完成FTP操作的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-05-05
  • 基于C#實現(xiàn)亂碼視頻效果

    基于C#實現(xiàn)亂碼視頻效果

    亂碼視頻效果可能很多人都在抖音看到過,即把一個短視頻,轉(zhuǎn)成數(shù)字、字母等亂碼組成的形式進行播放。本文將用C#實現(xiàn)一下這一效果,感興趣的可以了解一下
    2023-01-01
  • C#把EXCEL數(shù)據(jù)轉(zhuǎn)換成DataTable

    C#把EXCEL數(shù)據(jù)轉(zhuǎn)換成DataTable

    這篇文章介紹了C#把EXCEL數(shù)據(jù)轉(zhuǎn)換成DataTable的方法,文中通過示例代碼介紹的非常詳細。對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-04-04
  • 解析如何正確使用SqlConnection的實現(xiàn)方法

    解析如何正確使用SqlConnection的實現(xiàn)方法

    本篇文章對如何正確使用SqlConnection的實現(xiàn)方法進行了詳細的分析介紹,需要的朋友參考下
    2013-05-05
  • C# 創(chuàng)建Excel氣泡圖的實例代碼

    C# 創(chuàng)建Excel氣泡圖的實例代碼

    這篇文章主要介紹了C# 創(chuàng)建Excel氣泡圖的實例代碼,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-01-01
  • C#中DataTable刪除行的方法分析

    C#中DataTable刪除行的方法分析

    這篇文章主要介紹了C#中DataTable刪除行的方法,包括了常見的幾種刪除方法的分析,需要的朋友可以參考下
    2014-09-09
  • 使用 BenchmarkDotNet 對 C# 代碼進行基準測試

    使用 BenchmarkDotNet 對 C# 代碼進行基準測試

    這篇文章主要介紹了使用 BenchmarkDotNet 對 C# 代碼進行基準測試,幫助大家更好的理解和學習使用c#,感興趣的朋友可以了解下
    2021-03-03
  • Unity?UGUI?按鈕綁定事件的?4?種方式匯總

    Unity?UGUI?按鈕綁定事件的?4?種方式匯總

    UGUI?可視化創(chuàng)建以及關(guān)聯(lián)事件很方便,?動態(tài)創(chuàng)建可以利用創(chuàng)建好的?Prefab?進行實例化,?只是在關(guān)聯(lián)事件上有些復(fù)雜,這篇文章主要介紹了Unity?UGUI?按鈕綁定事件的?4?種方式,需要的朋友可以參考下
    2022-01-01

最新評論