From 531b4ba0dc3619da20aa2f804dc22a7109c694ee Mon Sep 17 00:00:00 2001 From: Sergey Konovalov Date: Wed, 13 Oct 2021 00:21:37 +0300 Subject: [PATCH] [x2t] Fix conversion to oform --- Common/OfficeFileFormatChecker2.cpp | 5 ++++- Common/OfficeFileFormats.h | 1 + X2tConverter/src/cextracttools.h | 4 ++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Common/OfficeFileFormatChecker2.cpp b/Common/OfficeFileFormatChecker2.cpp index 0245a82fee..ffc0290201 100644 --- a/Common/OfficeFileFormatChecker2.cpp +++ b/Common/OfficeFileFormatChecker2.cpp @@ -892,6 +892,7 @@ std::wstring COfficeFileFormatChecker::GetExtensionByType(int type) switch (type) { case AVS_OFFICESTUDIO_FILE_DOCUMENT_OFORM: return L".oform"; + case AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCXF: return L".docxf"; case AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX: return L".docx"; case AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCM: return L".docm"; case AVS_OFFICESTUDIO_FILE_DOCUMENT_DOTX: return L".dotx"; @@ -954,7 +955,7 @@ std::wstring COfficeFileFormatChecker::GetExtensionByType(int type) case AVS_OFFICESTUDIO_FILE_IMAGE_PSD: return L".psd"; case AVS_OFFICESTUDIO_FILE_IMAGE_ICO: return L".ico"; - case AVS_OFFICESTUDIO_FILE_CANVAS_WORD: + case AVS_OFFICESTUDIO_FILE_CANVAS_WORD: case AVS_OFFICESTUDIO_FILE_CANVAS_SPREADSHEET: case AVS_OFFICESTUDIO_FILE_CANVAS_PRESENTATION: return L".bin"; case AVS_OFFICESTUDIO_FILE_OTHER_OLD_DOCUMENT: @@ -973,6 +974,8 @@ int COfficeFileFormatChecker::GetFormatByExtension(const std::wstring& ext) return AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX; if (L".oform" == ext) return AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX; //AVS_OFFICESTUDIO_FILE_DOCUMENT_OFORM + if (L".docxf" == ext) + return AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX; //AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCXF if (L".docm" == ext) return AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCM; if (L".dotx" == ext) diff --git a/Common/OfficeFileFormats.h b/Common/OfficeFileFormats.h index 5855661387..1d402787ec 100644 --- a/Common/OfficeFileFormats.h +++ b/Common/OfficeFileFormats.h @@ -54,6 +54,7 @@ #define AVS_OFFICESTUDIO_FILE_DOCUMENT_HTML_IN_CONTAINER AVS_OFFICESTUDIO_FILE_DOCUMENT + 0x0012 #define AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX_PACKAGE AVS_OFFICESTUDIO_FILE_DOCUMENT + 0x0014 #define AVS_OFFICESTUDIO_FILE_DOCUMENT_OFORM AVS_OFFICESTUDIO_FILE_DOCUMENT + 0x0015 +#define AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCXF AVS_OFFICESTUDIO_FILE_DOCUMENT + 0x0016 #define AVS_OFFICESTUDIO_FILE_PRESENTATION 0x0080 #define AVS_OFFICESTUDIO_FILE_PRESENTATION_PPTX AVS_OFFICESTUDIO_FILE_PRESENTATION + 0x0001 diff --git a/X2tConverter/src/cextracttools.h b/X2tConverter/src/cextracttools.h index a90eb118b5..87bd96918d 100644 --- a/X2tConverter/src/cextracttools.h +++ b/X2tConverter/src/cextracttools.h @@ -1084,6 +1084,10 @@ namespace NExtractTools else m_sFileTo->append(FileFormatChecker.GetExtensionByType(toFormat)); } + else if ( AVS_OFFICESTUDIO_FILE_DOCUMENT_OFORM == toFormat || AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCXF == toFormat) + { + toFormat = AVS_OFFICESTUDIO_FILE_DOCUMENT_DOCX; + } *m_nFormatTo = toFormat; } bool getDontSaveAdditional() const