int SaveFile(nType, sPath, sParams);
Сохраняет файл после внесения всех изменений. Необходимо установить тип файла, который будет сохранен.
Параметры:
Название | Тип | Описание |
nType | const int& | Тип сохраняемого файла задается как шестнадцатеричное целое число для кода C++. Для файла сценария .docconstructor возможны следующие значения: docx, odt, rtf, txt, pptx, xlsx, ods, csv, pdf (см. значения AVS_OFFICESTUDIO_FILE_XXX). |
sPath | const wchar_t* | Путь к сохраняемому файлу вместе с его именем и расширением. |
sParams | const wchar_t* | Параметры, необходимые для корректного сохранения файла (чаще всего используется кодировка для типов файлов txt и csv или разделитель для файлов csv, для других типов файлов это просто пустая строка). Параметры добавляются в виде тегов XML, где m_nCsvTxtEncoding используется для кодирования текста, а m_nCsvDelimiter — для разделителя csv. Вы можете найти все поддерживаемые значения для кодировки i в этом файле. Поддерживаемые значения разделителей csv включают:
При сохранении в файл изображения (png или jpg) для создания миниатюр используются дополнительные параметры. Смотрите ниже, чтобы узнать их. |
Пример
C++
std::wstring sWorkDirectory = NSUtils::GetBuilderDirectory();
CDocBuilder::Initialize(sWorkDirectory.c_str());
CDocBuilder oBuilder;
std::wstring sDstPath = sProcessDirectory + L"/result.docx";
oBuilder.SaveFile(OFFICESTUDIO_FILE_DOCUMENT_DOCX, sDstPath.c_str());
CDocBuilder::Dispose();
.docconstructor
builder.SaveFile("docx", "result.docx");
Сохранение в изображения
Document Builder позволяет сохранять файлы документов в файлы изображений, создавая эскизы первой страницы или всех страниц документа. Это делается с помощью параметров метода SaveFile(). Параметры добавляются в виде тегов XML, где можно использовать следующие теги:
- m_oThumbnail — тег core, показывающий, что внутренние узлы будут использоваться для создания миниатюры из файла документа;
- format -формат файла изображения, используемый для создания эскиза (может принимать следующие значения: 3 — для файла JPG, 4 — для файла PNG);
- aspect — соотношение сторон изображения при создании миниатюры из файла документа (может принимать следующие значения: 1 — сохранится исходное соотношение сторон, 0 — изображение растянется по ширине и высоте, указанным ниже;
- first — следует ли преобразовать в эскиз только первую страницу или все страницы (может принимать следующие значения: true — будет преобразована только первая страница, false — для создания эскизов будут использованы все страницы документа, в этом случае файл будет сохранен в виде архива изображений, по одному на каждую страницу);
- width -ширина изображения в пикселях;
- height — высота изображения в пикселях.
Пример
C++
oBuilder.SaveFile(OFFICESTUDIO_FILE_IMAGE, L"thumbnail.png", "<m_oThumbnail><format>4</format><aspect>1</aspect><first>false</first><width>1000</width><height>1000</height></m_oThumbnail>");
.docconstructor пример с преобразованием только первой страницы
builder.SaveFile("image", "./thumbnail.png", "<m_oThumbnail><format>4</format><aspect>1</aspect><first>true</first><width>1000</width><height>1000</height></m_oThumbnail>");
.docconstructor пример с преобразованием всех страниц и на выходе получим архив
builder.SaveFile("image", "./thumbnail.zip", "<m_oThumbnail><format>4</format><aspect>1</aspect><first>false</first><width>1000</width><height>1000</height></m_oThumbnail>");