当它不是菜单的一部分时,如何在 powerpoint 中插入特殊字符作为项目符号?
How can I insert a special character as bullet point in powerpoint, when it is not part of the menu?
我想把字符代码为25B0的特殊字符,在Unicode中是9648,作为我在PowerPoint中的点。但它似乎不是 PowerPoint 中特殊字符菜单的一部分 - 我在 Arial、Webdings、Wingdings 1-3 上找不到它……有什么方法可以 find/get 它在那里吗?在我的特殊情况下,将其作为图片导入不是有用的选择。谢谢你的任何想法。 (我使用 PowerPoint 2010。)
以上是我最喜欢的解决方案。如果这种方式不可能,我可以通过 VBA 想出一个解决方案。有没有可能让正文占位符知道,我想在第二个项目符号级别使用特殊字符 9648,在第三个级别使用字符 9649?
这是我在给史蒂夫的第一个回答中提到的代码:
Sub Bullets()
Dim Shp As Shape
Dim sld As Slide
Dim i As Integer
Set sld = Application.ActiveWindow.View.Slide
Set Shp = sld.Shapes.AddShape(Type:=msoShapeRectangle, Left:=416.97612, Top:=160.44084, Width:=323.9998, Height:=283.46439)
With Shp
.Fill.Visible = msoFalse
.Line.Visible = msoFalse
With .TextFrame
.TextRange.Text = "Text 1" & vbCrLf & "Text 2" & vbCrLf & "Text 3"
.VerticalAnchor = msoAnchorTop
.MarginBottom = "10"
.MarginLeft = "10"
.MarginRight = "10"
.MarginTop = "10"
.WordWrap = msoTrue
With .TextRange
.Font.Size = 14
.Font.Name = "Arial"
.Font.Color.RGB = RGB(0, 0, 0)
.ParagraphFormat.Alignment = ppAlignLeft
.ParagraphFormat.Bullet.UseTextColor = msoFalse
.ParagraphFormat.Bullet.UseTextFont = msoFalse
.ParagraphFormat.Bullet.Font.Color.RGB = RGB(9, 91, 164)
.Characters(1, 6).Font.Bold = msoTrue
For i = 2 To 3
With .Paragraphs(i).ParagraphFormat.Bullet
.Visible = msoTrue
End With
Next
With .Paragraphs(2)
.IndentLevel = 2
.ParagraphFormat.Bullet.Character = 9648
.ParagraphFormat.Bullet.RelativeSize = 1
End With
With .Paragraphs(3)
.IndentLevel = 3
.ParagraphFormat.Bullet.Character = 9649
.ParagraphFormat.Bullet.RelativeSize = 1
End With
End With
With .Ruler
.Levels(2).FirstMargin = 14.173219
.Levels(2).LeftMargin = 28.346439
.Levels(3).FirstMargin = 28.346439
.Levels(3).LeftMargin = 42.519658
End With
End With
.Select (msoFalse)
End With
End Sub
并非所有字体都占用了整个 Unicode space 中的所有字形。有一个 VBA 解决方案,但您应该可以通过 UI 通过打开“插入/符号”对话框选择一个适当填充的 Unicode 来做到这一点,例如Arial Unicode 并将字形代码键入字符字段。
在 VBA 中,您可以像这样设置项目符号字符:
TextRange.Paragraphs(1).ParagraphFormat.Bullet.Character
但是你也需要设置相关的字体。
如果使用 UI,请在左上角的下拉菜单中设置字体(示例中为 Arial Unicode MS),然后在右下角的字符代码字段中以十六进制形式键入字形代码(屏幕截图中的 25D5)。
要为幻灯片母版中的第一段设置项目符号:
With ActivePresentation.Designs(1).SlideMaster.Shapes("Text Placeholder 2")
With .TextFrame2.TextRange.Paragraphs(1)
.ParagraphFormat.Bullet.Font.Name = "Arial"
.ParagraphFormat.Bullet.Character = 1234
End With
End With
如果有多个母版(母版,而不是布局),您可以根据需要通过更改 .Designs(1) 来选择所需的母版。
您可以通过更改 .Paragraphs(x) 值在不同的段落上设置项目符号。
我想把字符代码为25B0的特殊字符,在Unicode中是9648,作为我在PowerPoint中的点。但它似乎不是 PowerPoint 中特殊字符菜单的一部分 - 我在 Arial、Webdings、Wingdings 1-3 上找不到它……有什么方法可以 find/get 它在那里吗?在我的特殊情况下,将其作为图片导入不是有用的选择。谢谢你的任何想法。 (我使用 PowerPoint 2010。)
以上是我最喜欢的解决方案。如果这种方式不可能,我可以通过 VBA 想出一个解决方案。有没有可能让正文占位符知道,我想在第二个项目符号级别使用特殊字符 9648,在第三个级别使用字符 9649?
这是我在给史蒂夫的第一个回答中提到的代码:
Sub Bullets()
Dim Shp As Shape
Dim sld As Slide
Dim i As Integer
Set sld = Application.ActiveWindow.View.Slide
Set Shp = sld.Shapes.AddShape(Type:=msoShapeRectangle, Left:=416.97612, Top:=160.44084, Width:=323.9998, Height:=283.46439)
With Shp
.Fill.Visible = msoFalse
.Line.Visible = msoFalse
With .TextFrame
.TextRange.Text = "Text 1" & vbCrLf & "Text 2" & vbCrLf & "Text 3"
.VerticalAnchor = msoAnchorTop
.MarginBottom = "10"
.MarginLeft = "10"
.MarginRight = "10"
.MarginTop = "10"
.WordWrap = msoTrue
With .TextRange
.Font.Size = 14
.Font.Name = "Arial"
.Font.Color.RGB = RGB(0, 0, 0)
.ParagraphFormat.Alignment = ppAlignLeft
.ParagraphFormat.Bullet.UseTextColor = msoFalse
.ParagraphFormat.Bullet.UseTextFont = msoFalse
.ParagraphFormat.Bullet.Font.Color.RGB = RGB(9, 91, 164)
.Characters(1, 6).Font.Bold = msoTrue
For i = 2 To 3
With .Paragraphs(i).ParagraphFormat.Bullet
.Visible = msoTrue
End With
Next
With .Paragraphs(2)
.IndentLevel = 2
.ParagraphFormat.Bullet.Character = 9648
.ParagraphFormat.Bullet.RelativeSize = 1
End With
With .Paragraphs(3)
.IndentLevel = 3
.ParagraphFormat.Bullet.Character = 9649
.ParagraphFormat.Bullet.RelativeSize = 1
End With
End With
With .Ruler
.Levels(2).FirstMargin = 14.173219
.Levels(2).LeftMargin = 28.346439
.Levels(3).FirstMargin = 28.346439
.Levels(3).LeftMargin = 42.519658
End With
End With
.Select (msoFalse)
End With
End Sub
并非所有字体都占用了整个 Unicode space 中的所有字形。有一个 VBA 解决方案,但您应该可以通过 UI 通过打开“插入/符号”对话框选择一个适当填充的 Unicode 来做到这一点,例如Arial Unicode 并将字形代码键入字符字段。
在 VBA 中,您可以像这样设置项目符号字符:
TextRange.Paragraphs(1).ParagraphFormat.Bullet.Character
但是你也需要设置相关的字体。
如果使用 UI,请在左上角的下拉菜单中设置字体(示例中为 Arial Unicode MS),然后在右下角的字符代码字段中以十六进制形式键入字形代码(屏幕截图中的 25D5)。
要为幻灯片母版中的第一段设置项目符号:
With ActivePresentation.Designs(1).SlideMaster.Shapes("Text Placeholder 2")
With .TextFrame2.TextRange.Paragraphs(1)
.ParagraphFormat.Bullet.Font.Name = "Arial"
.ParagraphFormat.Bullet.Character = 1234
End With
End With
如果有多个母版(母版,而不是布局),您可以根据需要通过更改 .Designs(1) 来选择所需的母版。
您可以通过更改 .Paragraphs(x) 值在不同的段落上设置项目符号。