Продукты Р7
Корпоративный сервер 2024
Корпоративный сервер 2024
Сервер документов
Сервер документов
Редакторы документов
Редакторы документов
Корпоративный сервер 2019
Корпоративный сервер 2019
Графика
Графика
ВКС и мессенджер
ВКС и мессенджер
Мобильные редакторы
Мобильные редакторы
Почтовый сервер
Почтовый сервер
Органайзер
Органайзер
Сервер лицензирования
Сервер лицензирования
Файл-Экспресс
Файл-Экспресс
Аналитика
Аналитика
Дополнительно
Часто задаваемые вопросы
Разработчикам
Интеграции
Новые возможности

Используя файл .docconstructor

Обновлено: 29.05.26

Структура, используемая для файла .docconstructor

Все файлы .docconstructor имеют простую структуру, которая позволяет легко их создавать. Они состоят из следующих основных частей, для каждой из которых используется соответствующий класс метода CDocBuilder:

1. Подготовка к работе с документом:

Уточнение

Методы CDocBuilder.CreateFile или CDocBuilder.OpenFile используются совместно с методом CDocBuilder.SetTmpFolder

builder.SetTmpFolder("DocBuilderTemp");
builder.CreateFile("docx");

2. Создание содержимого документа с помощью метода CDocBuilder.ExecuteCommand:

Уточнение

Метод не используется явно, вместо него используются сами команды.

var oDocument = Api.GetDocument();
var oParagraph;
oParagraph = Api.CreateParagraph();
oParagraph.SetJc("center");
oParagraph.AddText("Center");
oDocument.Push(oParagraph);

3. Сохранение документа (метод CDocBuilder.SaveFile) и освобождение для завершения работы с ним (метод CloseFile):

builder.SaveFile("pdf", "images.pdf");
builder.CloseFile();

Правила для файла .docconstructor

Существует несколько правил, используемых для создания файлов скрипта .docconstructor, чтобы они работали правильно:

  • Кодировка файла всегда UTF8;
  • Все команды, содержащие builder. разделены по строкам, т.е. их нельзя записать в одну строку, каждая команда должна начинаться со своей строки;
  • Все общие команды и методы JavaScript должны быть использованы внутри строк builder.CreateFile() и builder.SaveFile(), иначе при выполнении кода будет выдана ошибка;
  • Комментарии разрешены. Любая строка, начинающаяся с # или //, считается комментарием;
  • Пустые строки разрешены. Вы можете ввести любое количество пустых строк для разделения блоков, синтаксический анализатор будет их игнорировать;
  • Все методы CDocBuilder (кроме CDocBuilder.ExecuteCommand) запускаются с помощью builder;
  • Метод CDocBuilder.ExecuteCommand не используется в явном виде, вместо него используется сама команда. Это сделано для того, чтобы избежать сложности разбора и позволить использовать обычные команды и методы JavaScript;
  • Методы CDocBuilder.RunTextA, CDocBuilder.RunTextW, CDocBuilder.Initialize и CDocBuilder.Dispose не используются в файлах .docbuilder;
  • Все методы в файле .docbuilder (кроме перечисленных выше) используются так же, как и в коде C++. См. список методов ниже, чтобы узнать больше о каждом из них.

Таким образом, ниже приведен пример полного рабочего файла .docconstructor.

Пример

builder.SetTmpFolder("DocBuilderTemp");
builder.CreateFile("docx");
var oDocument = Api.GetDocument();
var oParagraph;
oParagraph = oDocument.GetElement(0);
oParagraph.SetJc("center");
oParagraph.AddText("Center");
builder.SaveFile("pdf", "images.pdf");
builder.CloseFile();

Была ли эта статья полезной?

Поделитесь пожалуйста своим мнением

      В статье есть ошибкиРекомендации не помоглиТекст трудно понятьСодержание статьи не соответствует заголовкуДругое