Skip to main content

Метод openDocument

Метод openDocument предназначен для открытия документа в редакторе.

Информация
Перед вызовом данного метода нужно дождаться события load iframe'а редактора.
openDocument = ({
content: ArrayBuffer,
filename: string,
lang: string,
mode: 'review' | 'readonly' | 'default',
userName: string,
workerInitTimeout?: number,
coreInitTimeout?: number,
}) => DocumentDescription | ErrorDescription

Параметры:

  • content – содержимое документа (массив байт данных файла);

  • filename – название документа, отображается в заголовке редактора;

  • lang – язык интерфейса редактора;

  • 'ru-RU' – русский;

  • 'en-US' – английский;

  • 'es-PA' – испанский;

  • 'fr-FR' – французский;

  • 'tt-RU' – татарский;

  • 'ba-RU' – башкирский;

  • 'be-BY' – белорусский;

  • mode – параметр, позволяющий выбрать один из следующих режимов редактора:

enum Modes {
// только чтение, без разрешения на редактирование документа
readonly = "readonly",
// редактирование документа в режиме рецензирования,
// без возможности отключить отслеживание изменений
review = "review",
// редактирование документа с полными правами
default = "default"
}
  • userName – имя пользователя (строка, значение по умолчанию - 'Local User'), которое будет отображено в комментариях и отслеживаемых изменениях;

  • workerInitTimeout – таймаут загрузки потока ядра, необязательный параметр;

  • coreInitTimeout – таймаут инициализации ядра, необязательный параметр;

  • userPermissions – разрешение пользователя, имеет формат type Partial<Record<Key, boolean> (необязательный параметр);

  • canCopy – запрет на копирование из документа;

  • canPrint – запрет на печать;

  • canCopyToExternalClipboard – запрет на копирование из документа в буфер обмена. Value: true (по умолчанию) - разрешено, false - запрещено.

Метод возвращает структуру DocumentDescription, если инициализация была успешно выполнена.

type DocumentDescription = {
type: TYPES; // тип документа
format: OPEN_FORMATS; // формат документа
}

Где type - один из представленных ниже типов документов:

enum TYPES = {
document = 'document', // текстовые документы
spreadsheet = 'spreadsheet', // табличные документы
presentation = 'presentation', // презентации
pdf = 'pdf' // документы PDF
}

И format - один из форматов документов:

enum OPEN_FORMATS = {
// формат Microsoft Office Open XML
// (docx, xlsx, pptx, dotx, xltx, potx, docm, xlsm, pptm)
oxml = 'OXML',
// формат OpenDocument (odt, ods, odp, ott, ots),
// также используется для открытия файлов XO
// (xodt, xott, xods, xots, xodp), так как базируется на ODF
odf = 'ODF',
// текстовый формат
plain = 'PlainText',
// текстовый формат с разделителями,
// используется для хранения табличных данных (csv, scsv, tsv)
dsv = 'DSV',
// межплатформенный открытый формат электронных документов
pdf = 'PDF',
// ISO-стандартизированный формат PDF/A
// для долгосрочного архивного хранения электронных документов
pdfa = 'PDFA'
}

В случае ошибки метод возвращает структуру ErrorDescription, содержащую сообщение об ошибке:

type ErrorDescription = {
errorInfo: string; // сообщение об ошибке
}