mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
Merge pull request 'Added support HWPML format' (#454) from feature/HWPML into release/v9.1.0
Reviewed-on: https://git.onlyoffice.com/ONLYOFFICE/core/pulls/454
This commit is contained in:
@ -696,6 +696,10 @@ namespace NExtractTools
|
||||
{
|
||||
nRes = hwpx2docx_dir(sFrom, sDocxDir, params, convertParams);
|
||||
}
|
||||
else if (AVS_OFFICESTUDIO_FILE_DOCUMENT_HWPML == nFormatFrom)
|
||||
{
|
||||
nRes = hwpml2docx_dir(sFrom, sDocxDir, params, convertParams);
|
||||
}
|
||||
else
|
||||
nRes = AVS_FILEUTILS_ERROR_CONVERT_PARAMS;
|
||||
|
||||
|
||||
@ -294,6 +294,10 @@ namespace NExtractTools
|
||||
DECLARE_CONVERT_FUNC(hwpx2docx);
|
||||
DECLARE_CONVERT_FUNC(hwpx2docx_dir);
|
||||
|
||||
//HWPML
|
||||
DECLARE_CONVERT_FUNC(hwpml2docx);
|
||||
DECLARE_CONVERT_FUNC(hwpml2docx_dir);
|
||||
|
||||
//-------------------------------------------------------------------------------------------------------------------------------------------------
|
||||
_UINT32 convertmailmerge(const InputParamsMailMerge& oMailMergeSend, const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams);
|
||||
|
||||
|
||||
@ -6,17 +6,18 @@
|
||||
|
||||
namespace NExtractTools
|
||||
{
|
||||
_UINT32 hwp_file2docx(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams, bool bIsXmlFormat, bool bConvertToDir)
|
||||
template <typename OpenMethod>
|
||||
_UINT32 hwp_file2docx(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams, OpenMethod openMethod, bool bConvertToDir)
|
||||
{
|
||||
CHWPFile oFile;
|
||||
|
||||
oFile.SetTempDirectory(convertParams.m_sTempDir);
|
||||
|
||||
params.m_bMacro = false;
|
||||
if (((bIsXmlFormat && !oFile.OpenHWPX(sFrom)) ||
|
||||
(!bIsXmlFormat && !oFile.OpenHWP(sFrom))) ||
|
||||
((bConvertToDir && !oFile.ConvertToOOXML_Dir(sTo)) ||
|
||||
(!bConvertToDir && !oFile.ConvertToOOXML(sTo))))
|
||||
|
||||
if (!openMethod(oFile, sFrom) ||
|
||||
(bConvertToDir && !oFile.ConvertToOOXML_Dir(sTo)) ||
|
||||
(!bConvertToDir && !oFile.ConvertToOOXML(sTo)))
|
||||
return AVS_FILEUTILS_ERROR_CONVERT;
|
||||
|
||||
return 0;
|
||||
@ -24,22 +25,32 @@ namespace NExtractTools
|
||||
|
||||
_UINT32 hwp2docx(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, false, false);
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWP(sFrom); }, false);
|
||||
}
|
||||
|
||||
_UINT32 hwp2docx_dir(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, false, true);
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWP(sFrom); }, true);
|
||||
}
|
||||
|
||||
_UINT32 hwpx2docx(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, true, false);
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWPX(sFrom); }, false);
|
||||
}
|
||||
|
||||
_UINT32 hwpx2docx_dir(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, true, true);
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWPX(sFrom); }, true);
|
||||
}
|
||||
|
||||
_UINT32 hwpml2docx(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWPML(sFrom); }, false);
|
||||
}
|
||||
|
||||
_UINT32 hwpml2docx_dir(const std::wstring& sFrom, const std::wstring& sTo, InputParams& params, ConvertParams& convertParams)
|
||||
{
|
||||
return hwp_file2docx(sFrom, sTo, params, convertParams, [](CHWPFile& oFile, const std::wstring& sFrom){ return oFile.OpenHWPML(sFrom); }, true);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user