如何更改 Office 中 SmartArt 的預設顏色樣式?

如何更改 Office 中 SmartArt 的預設顏色樣式?

我目前正在為我們的小型企業建立一個新的 Powerpoint 範本。作為其中的一部分,我們希望在人們使用 SmartArt 創建圖形時自動選擇正確的顏色,從而節省人們的時間。

更改為不同的顏色非常簡單,這裡給出一個範例:http://pcunleashed.com/powerpoint/how-to-re-color-your-smartart-graphics-in-powerpoint/

我的問題是:在創建新圖形時是否可以更改預設使用的配色方案。我的主要強調色是藍色,因此標準圖形用白色文字填滿了藍色形狀。我希望標準只是帶有白色背景和黑色文字的藍色輪廓。這是另一個可用選項,但不是當前的預設選項。

這將為我們的人員節省大量創建圖表的時間。

答案1

不幸的是,(從 PowerPoint 2013 開始)無法設定 SmartArt 的預設格式或使用格式刷來設定 SmartArt 圖形中所有形狀的格式。

但是,每當出現此類問題時,VBA 巨集和加載項就會派上用場。

下面的非常基本的巨集將從您選擇的形狀或預設形狀樣式(如果您未選擇任何內容)中獲取線條和填滿顏色,並將其套用到 SmartArt 圖形中的每個形狀。如果您不知道如何使用宏,請查看以下範例:

http://i-present.co.uk/category/blog/vba/

它是基本的,因為使用者可以設定數百個屬性,例如填滿漸層、圖片、紋理、線條顏色、寬度、虛線以及反射、發光等效果。

我擁有一家名為 GMARK 的公司,專門從事 PowerPoint 外掛程式開發(http://i-present.co.uk),如果有興趣,可以建立一個加載項來執行此操作。

Sub SetSmartArtToDefaultShapeStyle() 
Dim oSld As Slide 
Dim oShpCheck As Shape, oShpSource As Shape, oShpNode 
Dim oNode As SmartArtNode 
Dim DeleteShape As Boolean

On Error GoTo errorhandler

Set oSld = ActivePresentation.Slides(ActiveWindow.View.Slide.SlideIndex)

If Not ActiveWindow.Selection.HasChildShapeRange Then 
  Set oShpSource = oSld.Shapes.AddShape(msoShapeRectangle, 0, 0, 10, 10) 
  DeleteShape = True 
Else 
  Set oShpSource = ActiveWindow.Selection.ShapeRange(1) 
End If

oShpSource.PickUp

For Each oShpCheck In oSld.Shapes ' As Shapes 
  With oShpCheck 
    If .HasSmartArt Then 
      For Each oNode In .SmartArt.Nodes 
        For Each oShpNode In oNode.Shapes ' As ShapeRange 
          With oShpNode 
            .Line.Visible = oShpSource.Line.Visible 
            .Fill.Visible = oShpSource.Line.Visible 
            If .Line.ForeColor.Type = msoColorTypeRGB Then _ 
              .Line.ForeColor.RGB = oShpSource.Line.ForeColor.RGB 
            If .Line.ForeColor.Type = msoColorTypeScheme Then _ 
              .Line.ForeColor.ObjectThemeColor = oShpSource.Line.ForeColor.ObjectThemeColor 
            If .Fill.ForeColor.Type = msoColorTypeRGB Then _ 
              .Fill.ForeColor.RGB = oShpSource.Fill.ForeColor.RGB 
            If .Fill.ForeColor.Type = msoColorTypeScheme Then _ 
              .Fill.ForeColor.ObjectThemeColor = oShpSource.Fill.ForeColor.ObjectThemeColor 
          End With 
        Next 
      Next 
    End If 
  End With 
Next

If DeleteShape = True Then oShpSource.Delete

Exit Sub

errorhandler: 
MsgBox "There was an error : " & Err.Number & " : " & Err.Description, vbCritical + vbOKOnly, "SmartArt Format by i-present.co.uk" 
Err.Clear 
If DeleteShape = True Then oShpSource.Delete 
End Sub

答案2

這是更改 SmartArt 圖形使用的預設顏色的更簡單的方法。我只用 PowerPoint 2010 對此進行了測試。不能 100% 確定這就是您正在尋找的內容,但它可能對其他人有幫助。

在“設計”標籤下,選擇“顏色”下拉清單。選擇建立新主題顏色並將強調 1 顏色變更為您想要的預設 SmartArt 顏色。

但請注意,這可能會影響投影片上的項目符號顏色等內容。 This can also be changed by going into the Slide Master, select the top level slide template, select the text window containing the slide bullets, under the Home menu, select the bullet drop down, then Bullets and Numbering and you will find the bullet color設定.

答案3

自 v.2013 起,您可以更改調色板,但無法更改預設顏色和字體大小以及 smartart 中使用的形狀

相關內容