Недавно понадобилось мне написть небольшую программу по обработке писем. Необходимо было собрать несколько писем и передать их в Microsoft Word в уже отформатированном виде, чтобы максимально избывиться от ручного форматирования. В результате столкнулся с несколькими проблемами. Поиски по просторам Интернета ни к чему не привели (а может быть плохо искал), пришлось все делать методом научного тыка.
Вот некоторые из этих проблем с решениями:
Установка переносов в тексте:
// включение переносов
WordDocument1.AutoHyphenation := true;
// перенос в словах из ПРОПИСНЫХ букв
WordDocument1.HyphenateCaps := true;
Зеркальные поля:
WordDocument1.PageSetup.MirrorMargins := -1;
(-1 соответствует значению TRUE, 0 - FALSE)
Номера страниц:
// установка начального номера
with
WordDocument1.Sections.Item(1).Footers.item(1
) do PageNumbers.StartingNumber := 1;
// показывать номер на первой странице
with
WordDocument1.Sections.Item(1).Footers.item(1
) do
PageNumbers.ShowFirstPageNumber := false;
Далее почему-то компилятор стал ругаться когда я стал передавать в метод числовые значения, пришлось его обмануть :)
Var
em, em1: OleVariant;
…
em := 1; // выравнивание
//(0 – слева, 1 – по центру,
//2 – справа, 3 – по ширине).
em1 := 0; // показывать номер на первой странице
with WordDocument1.Sections.Item(1).Footers.item(1) do
PageNumbers.Add(em,em1);
Это то что касалось номеров страниц внизу листа, в верху делается аналогично:
with WordDocument1.Sections.Item(1).Footers.item(1) do
PageNumbers.Add(em,em1);
Комментариев нет:
Отправить комментарий