Как я могу вставить специальный символ в качестве маркера в PowerPoint, если он не является частью меню?

Я хотел бы, чтобы специальный символ с кодом символа 25B0, который равен 9648 в Unicode, стал моей точкой маркера в PowerPoint. Но похоже, что он не является частью меню специальных символов в PowerPoint - я не мог найти его в Arial, Webdings, Wingdings 1-3 ... Есть ли способ найти / получить его там? Импортировать его как картинку в моем частном случае - бесполезная альтернатива. Спасибо за любые идеи. (Я работаю с 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

person RuudGullit    schedule 12.08.2016    source источник
comment
Не вопрос программирования - попробуйте суперпользователя?   -  person Paul R    schedule 12.08.2016
comment
Ну не в первую очередь. Но если стандартного решения нет, возможно, это можно сделать с помощью VBA. Я мог бы удалить стандартный заполнитель и добавить новый с нужными мне параметрами маркера. Я надеялся, что есть способ менее сложный.   -  person RuudGullit    schedule 12.08.2016
comment
Хорошо, если это действительно вопрос программирования, вам, вероятно, следует отредактировать вопрос и теги, чтобы прояснить это, иначе вероятно, будет перенесен на суперпользователя, поскольку в настоящее время это, похоже, всего лишь базовый вопрос уровня пользователя о PowerPoint.   -  person Paul R    schedule 12.08.2016
comment
Что ж, если бы это было элементарно, я бы мог это решить. ;-) Я бы предпочел решение без программирования, но, насколько я понимаю, это кажется невозможным.   -  person RuudGullit    schedule 12.08.2016
comment
Если в данном шрифте нет символа, закодированного в 25B0, вы не можете использовать 25B0. Вам нужно будет найти шрифт, который включает его, или выбрать другой символ маркера. VBA не поможет; он не может вытягивать символы, которых нет в воздухе (или шрифт).   -  person Steve Rindsberg    schedule 12.08.2016
comment
Спасибо, Стив, это в некотором смысле хорошие новости, потому что у меня есть доказательства, что они там. Я просто не знаю где. Я уже пытался создать их с помощью VBA, и это сработало. Коды следует. Просто я не могу контролировать маркеры в основном основном тексте, так как я не умею кодировать. И все же, было бы проще включить их обычным способом, если бы я знал, где они прячутся ...   -  person RuudGullit    schedule 12.08.2016


Ответы (2)


Не все шрифты содержат все глифы во всем пространстве Unicode. Существует решение VBA, но вы должны иметь возможность сделать это с помощью пользовательского интерфейса, открыв диалоговое окно Insert / Symbol, выбрав прилично заполненный Unicode, например. Arial Unicode и ввод кода глифа в символьное поле.

В VBA вы можете установить символ маркера примерно так:

 TextRange.Paragraphs(1).ParagraphFormat.Bullet.Character

Но вам также необходимо установить соответствующий шрифт.

При использовании пользовательского интерфейса вы устанавливаете шрифт в верхнем левом раскрывающемся списке (Arial Unicode MS в показанном примере), а затем вводите код глифа в шестнадцатеричном формате в поле кода символа в правом нижнем углу (25D5 на снимке экрана).

введите описание изображения здесь

person Jamie Garroch - MVP    schedule 12.08.2016
comment
Спасибо, Джейми, да, я знаю. Это не моя проблема. Я добавил свой код, как создать пули в нормальной форме. Проблема в том, как это сделать в заполнителе основного текста на мастере - person RuudGullit; 12.08.2016
comment
Или, как вариант, узнать, где прячется персонаж. В моем коде он работает с Arial. Но в диалоговом окне «Вставить символ» я не могу его найти. Вот наконец настоящая суть проблемы. - person RuudGullit; 12.08.2016
comment
Я добавил снимок экрана выше. Помогает? - person Jamie Garroch - MVP; 15.08.2016
comment
Да, нашел. Спасибо, Джейми. Наконец, я получил оба ответа - ваш, где его найти, и ответ Стива, как помочь себе с VBA. :-) - person RuudGullit; 15.08.2016

Чтобы установить маркер для первого абзаца в образце слайдов:

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).

person Steve Rindsberg    schedule 13.08.2016
comment
Извините, я не могу не отметить оба ответа (Стива и Джейми) как наиболее полезные. На самом деле они были! - person RuudGullit; 15.08.2016
comment
Не беспокойся; рад, что помог. - person Steve Rindsberg; 16.08.2016