Объект Word Font — параметры форматирования шрифта

Объект Word Font — параметры форматирования шрифта Объектная модель Microsoft Word

Приветствую всех читателей блога scriptcoding.ru. В этой публикации мы рассмотрим объект Font, который позволяет задать основные параметры шрифта в Word.

В прошлых статьях мы научились создавать приложение Word (смотрите «Word.Application«), новый документ (смотрите «Word.Documents») и также рассмотрели процесс добавления заданного текста в созданный документ с помощью объекта Selection (смотрите «Word.Selection«). Теперь настало время познакомиться с объектом Font, доступ к которому можно получить через одноименное свойство. Фактически, объект Font позволяет задать параметры форматирования шрифта.

Объект Font — основные параметры шрифта в Word

Сам по себе класс Font довольно прост, так как все свойства и методы интуитивно понятны. Сами свойства я разбил на несколько категорий в зависимости от их типа. И так, приступим…

Свойства класса Font – параметры форматирования шрифта

параметры шрифта в Word

Свойства, которые доступны для чтения и для записи, принимают логические значения TRUE или FALSE. При установлении значения TRUE свойства позволяют отформатировать выделенный текст: сделать жирным, курсивом, подчеркнутым и так далее.

AllCaps– Все прописные.

SmallCaps– Малые прописные.

Bold– Жирный шрифт в Word, само свойство возвращает True, False или wdUndefined (смесь True или False)

DoubleStrikeThrough– Двойное зачеркивание.

StrikeThrough– Одинарное зачеркивание.

Emboss– Приподнятый.

Engrave– Утопленный.

Italic– Курсив.

Outline– Контур.

Shadow– С тенью.

Subscript– Подстрочный знак.

Superscript– Надстрочный знак.

основные параметры Word шрифта

Свойства, которые позволяют задать или получить значение, заданное определенной константой (если происходит выполнение кода в редакторе VBA то можно использовать не целое число, и именованное значение).

ColorIndex– Параметры цвета текста шрифта в Word, значения константы WdColorIndex:

  • wdAuto — 0 — Автоматический цвет. По умолчанию, обычно черный цвет.
  • wdByAuthor — -1 — Цвет определяется автором документа
  • wdNoHighlight — 0 — Удаляет подсветку.
  • wdBlack — 1 – черный.
  • wdBlue — 2 – синий.
  • wdTurquoise — 3 – бирюзовый.
  • wdBrightGreen — 4 — ярко-зеленый.
  • wdPink — 5 – розовый.
  • wdRed — 6 – красный.
  • wdYellow — 7 – желтый.
  • wdWhite — 8 – белый.
  • wdDarkBlue — 9 — темно-синий.
  • wdTeal — 10 – бирюзовый.
  • wdGreen — 11 – зеленый.
  • wdViolet — 12 – фиолетовый.
  • wdDarkRed — 13 — темно-красный.
  • wdDarkYellow — 14 — темно-желтый.
  • wdGray50 — 15 — тень 50 серого.
  • wdGray25 — 16 — тень 25 серого.

Underline— Тип подчеркивания, заданный значением константы WdUnderline:

  • wdUnderlineNone — 0 — нет подчеркивания.
  • wdUnderlineSingle — 1 — одна линия, по умолчанию.
  • wdUnderlineWords — 2 — подчеркнет только отдельные слова.
  • wdUnderlineDouble — 3 — двойная линия.
  • wdUnderlineDotted — 4 – точки.
  • wdUnderlineThick — 6 — единая жирная линия.
  • wdUnderlineDash — 7 – тире.
  • wdUnderlineDotDash — 9 — чередующиеся точки и тире.
  • wdUnderlineDotDotDash — 10 – чередующиеся две точки и тире.
  • wdUnderlineWavy — 11 — одна волнистая линия.
  • wdUnderlineDottedHeavy — 20 – жирные точки.
  • wdUnderlineDashHeavy — 23 — жирные тире.
  • wdUnderlineDotDashHeavy — 25 — чередующиеся жирные точки и жирные тире.
  • wdUnderlineDotDotDashHeavy — 26 — чередующиеся жирные две точки и тире.
  • wdUnderlineWavyHeavy — 27 — жирная волнистая линия.
  • wdUnderlineDashLong — 39 — длинное тире.
  • wdUnderlineWavyDouble — 43 — двойная волнистая линия.
  • wdUnderlineDashLongHeavy — 55 — длинное жирное тире.

UnderlineColor— Возвращает или устанавливает 24-битный цвет подчеркивания, содержит значение константы WdColor:

  • wdColorAqua — 13421619 — аква
  • wdColorAutomatic — 16777216 — Автоматическая цвет. По умолчанию, обычно черный цвет.
  • wdColorBlack — 0 – черный.
  • wdColorBlue — 16711680 – синий.
  • wdColorBlueGray — 10053222 — сине-серый.
  • wdColorBrightGreen — 65280 — ярко-зеленый.
  • wdColorBrown — 13209 – коричневый.
  • wdColorDarkBlue — 8388608 — темно-синий.
  • wdColorDarkGreen — 13056 — темно-зеленый.
  • wdColorDarkRed — 128 — темно-красный.
  • wdColorDarkTeal — 6697728 – темно-бирюзовый.
  • wdColorDarkYellow — 32896 — темно-желтый.
  • wdColorGold — 52479 – золотистый.
  • wdColorGray05 — 15987699 — тень05серого.
  • wdColorGray10 — 15132390 — тень10серого.
  • wdColorGray125 — 14737632 — тень125серого.
  • wdColorGray15 — 14277081 — тень15серого.
  • wdColorGray20 — 13421772 — тень20серого.
  • wdColorGray25 — 12632256 — тень25серого.
  • wdColorGray30 — 11776947 — тень30серого.
  • wdColorGray35 — 10921638 — тень35 серого.
  • wdColorGray375 — 10526880 — тень375серого.
  • wdColorGray40 — 10066329 — тень40серого.
  • wdColorGray45 — 9211020 — тень45серого.
  • wdColorGray50 — 8421504 — тень50серого.
  • wdColorGray55 — 7566195 — тень55серого.
  • wdColorGray60 — 6710886 — тень60серого.
  • wdColorGray625 — 6316128 — тень625серого.
  • wdColorGray65 — 5855577 — тень65серого.
  • wdColorGray70 — 5000268 — тень70серого.
  • wdColorGray75 — 4210752 — тень75серого.
  • wdColorGray80 — 3355443 — тень80серого.
  • wdColorGray85 — 2500134 — тень85серого.
  • wdColorGray875 — 2105376 — тень875серого.
  • wdColorGray90 — 1644825 — тень90серого.
  • wdColorGray95 — 789516 — тень95серого.
  • wdColorGreen — 32768 – зеленый.
  • wdColorIndigo — 10040115 – синий.
  • wdColorLavender — 16751052 – бледно-лиловый.
  • wdColorLightBlue — 16737843 — светло-синий.
  • wdColorLightGreen — 13434828 — светло-зеленый.
  • wdColorLightOrange — 39423 — светло-оранжевый.
  • wdColorLightTurquoise — 16777164 – светло-бирюзовый.
  • wdColorLightYellow — 10092543 — светло-желтый.
  • wdColorLime — 52377 – липовый.
  • wdColorOliveGreen — 13107 – оливково-зеленый.
  • wdColorOrange — 26367 – оранжевый.
  • wdColorPaleBlue — 16764057 — бледно-голубой.
  • wdColorPink — 16711935 – розовый.
  • wdColorPlum — 6697881 — темно-фиолетовый.
  • wdColorRed — 255 – красный.
  • wdColorRose — 13408767 – розовый.
  • wdColorSeaGreen — 6723891 – зеленый.
  • wdColorSkyBlue — 16763904 — небесно-голубой.
  • wdColorTan — 10079487 — желтовато-коричневый.
  • wdColorTeal — 8421376 — бирюзовый.
  • wdColorTurquoise — 16776960 — Бирюзовый цвет.
  • wdColorViolet — 8388736 – фиолетовый.
  • wdColorWhite — 16777215 – белый.
  • wdColorYellow — 65535 – желтый.

DiacriticColor— Как ColorIndex, позволяет задать параметры цвета текста шрифта в word, принимает значения константы WdColor.

Прочие свойства, которые позволяют получить или задать такие основные параметры шрифта в Word, как размер, имя и так далее.

Position– Позволяет получить или задать смещение текста в пунктах относительно базовой линии.

Scaling— Возвращает или устанавливает процент масштаба, применяемого к шрифтом.

Spacing— Возвращает или задает расстояние в пунктах между символами. Считывание / запись

Size– Позволяет получить или установить параметры форматирования шрифта в Word: размер в пунктах.

Name— Возвращает или задает имя.

настройка параметров шрифтов в word

Методы объекта Font – параметры форматирования шрифта в Word

Grow() — Увеличивает размер на один пункт.

Shrink() — Уменьшает размер на один пункт.

Reset() – Полностью очищает параметры форматирования текст шрифта в Word.

Хорошо, основные свойства и методы мы рассмотрели, теперь настало время приступить к программированию, я напишу два примера под Wndows Script Host. Логика проста: происходит создание нового документа Word, далее происходит вставка текста с помощью объекта Selection, после происходит выделение различных диапазонов текста и их форматирование – основные параметры шрифта в Word.

Пример на VBScript

' ------------------------------------------------
' Объект Word Font
' Основные параметры шрифта в Word
' Font.vbs
' ------------------------------------------------
Option Explicit
 
dim oWord, oDoc, oSel, SelText, i, oFon, sel
 
' ссылка на объект Word Application
Set oWord = CreateObject("Word.Application")
' ссылка на колекцию Documents
Set oDoc = oWord.Documents
' создаем новый документ                                                                                                     основные параметры шрифта в Word
oDoc.Add()
' ссылка на объект Selection
Set oSel = oWord.Selection
' ссылка на объект Font
Set oFon = oSel.Font
' делаем документ видимым
oWord.Visible = true
 
With oSel
     For i = 0 To 100
                 ' вставляем текст
                 .Text = "параметры форматирования шрифта в Word"
                 ' Перемещаем курсор в конец текста
                 .EndOf
                 ' вставляем параграф
                 .TypeParagraph
     Next
End With
 
'-------------------------------------------------------------
' Форматируем текст в документе Word
'-------------------------------------------------------------
 
With oSel
     .SetRange 0,50
     oFon.Bold = true
     .SetRange 50,100
     oFon.DoubleStrikeThrough = true
     .SetRange 100,150
     oFon.Emboss = true
     .SetRange 150,200
     oFon.Engrave=true
     .SetRange 200,250
     oFon.Italic = true
     .SetRange 250,300
     oFon.Outline = true
     .SetRange 300,350
     oFon.Shadow = true
     .SetRange 350,400
     oFon.SmallCaps = true
     .SetRange 400,450
     oFon.Subscript = true
     .SetRange 450,500
     oFon.Superscript = true
     .SetRange 500,550
     oFon.StrikeThrough = true
     .SetRange 550,600
     oFon.Hidden = true
     .SetRange 600,650
     oFon.Name = "Times New Roman"                                                                                     ' основные параметры шрифта Word
     .SetRange 650,700
     oFon.Position = 50
     .SetRange 750,800
     oFon.Scaling = 120
     .SetRange 800,850
     oFon.Size = 30
     .SetRange 850,900
     oFon.Spacing = 20
     .SetRange 900,950
     oFon.Underline = 10
     oFon.UnderlineColor=8421376
End With
 
With oFon          
     sel = 950
     ' меняем цвет для разных фрагментов
     for i=1 to 16
                 sel = 950+(i*200)
                 oSel.SetRange sel+100, sel + 200
                 .ColorIndex = i
                 sel = sel + 200
     next
 
     ' делаем задержку в 3 секунды
     Wscript.Sleep 3000
     ' выделяем весь текст
     oDoc(1).Select
     Wscript.Sleep 3000
     ' очищаем параметры форматирования текста шрифта в Word
     .Reset
     ' устанавливаем верхний регистр
     .AllCaps = true
     Wscript.Sleep 3000
     ' устанавливаем нижний регистр
     .SmallCaps = true
End With

Пример на JScript

// ------------------------------------------------
// Объект Word Font
// Основные параметры шрифта в Word
// Font.js
// ------------------------------------------------
var oWord1, oDoc1, oSel1, SelText, i, oFon1, sel1;
 
// ссылка на объект Word Application
oWord1 = WScript.CreateObject("Word.Application");
// ссылка на коллекцию Documents
oDoc1 = oWord1.Documents;
// создаем новый документ                                                                                                    параметры форматирования шрифта
oDoc1.Add();
// ссылка на объект Selection
oSel1 = oWord1.Selection;
// ссылка на объект Font
oFon1 = oSel1.Font;
// делаем документ видимым
oWord1.Visible = true;
 
with (oSel1){
     for(i = 0; i<=100; i++){
                 // вставляем текст
                 Text = "параметры форматирования шрифта в Word";
                 // Перемещаем курсор в конец текста
                 EndOf();
                 // вставляем параграф
                 TypeParagraph();
     }
}
 
//--------------------------------------------------------
// Форматируем текст в документе Word
//--------------------------------------------------------
with (oSel1){
     SetRange(0,50);
     oFon1.Bold = true;
     SetRange(50,100);
     oFon1.DoubleStrikeThrough = true;
     SetRange(100,150);
     oFon1.Emboss = true;
     SetRange(150,200);
     oFon1.Engrave=true;
     SetRange(200,250);
     oFon1.Italic = true;                                                                                                  // параметры форматирования шрифта
     SetRange(250,300);
     oFon1.Outline = true;
     SetRange(300,350);
     oFon1.Shadow = true;
     SetRange(350,400);
     oFon1.SmallCaps = true;
     SetRange(400,450);
     oFon1.Subscript = true;
     SetRange(450,500);
     oFon1.Superscript = true;
     SetRange(500,550);
     oFon1.StrikeThrough = true;
     SetRange(550,600);
     oFon1.Hidden = true;
     SetRange(600,650);
     oFon1.Name = "Times New Roman";
     SetRange(650,700);
     oFon1.Position = 50;
     SetRange(750,800);
     oFon1.Scaling = 120;
     SetRange(800,850);
     oFon1.Size = 30;
     SetRange(850,900);
     oFon1.Spacing = 20;
     SetRange(900,950);
     oFon1.Underline = 10;
     oFon1.UnderlineColor=8421376;
}
with (oFon1){
     sel1 = 950;
     // меняем цвет для разных фрагментов
     for(i = 0; i<=16; i++){
                 sel1 = 950+(i*200);
                 oSel1.SetRange(sel1+100, sel1 + 200);
                 ColorIndex = i;
                 sel1 += 200;
     }
 
     // делаем задержку в 3 секунды
     WScript.Sleep(3000)
     // выделяем весь текст
     oDoc1(1).Select();
     WScript.Sleep(3000);
     // очищаем параметры форматирования текста шрифта в Word
     Reset();
     // устанавливаем верхний регистр
     AllCaps = true;
     WScript.Sleep(3000)
     // устанавливаем нижний регистр
     SmallCaps = true;
}
настройка параметров форматирования Word шрифта

Хорошо, теперь давайте разберем данные примеры. Логика работы программного кода одинакова, сразу после создания документа происходит несколько этапов:

Этап первый – в цикле for (смотрите синтаксис для языка vbscript — «Урок 6 по VBScript: Циклы for…next и for each…next» и jscript — «Урок 9 по JScript — оператор цикла for«) происходит вставка текста, с учетом параграфа и перевода строки.

Этап второй – Тут в блоке with содержится длинная череда из выделения фрагментов, для которых задаются основные параметры шрифта в Word: размер, отступы, имя и так далее.

Этап третий – Снова следует блок with, в теле которого выборочно происходит смена цвета для выделенных фрагментов. Далее с задержкой в 3 секунды (смотрите статью «Объект WScript — методы sleep, quit и echo и 8 свойств«) сбрасываются параметры форматирования шрифта и меняется регистр символов.

Оцените статью
Технологии программирования и ведение блога
Добавить комментарий