diff --git a/PdfFile/PdfFile.cpp b/PdfFile/PdfFile.cpp index 9d025271e3..1179db142e 100644 --- a/PdfFile/PdfFile.cpp +++ b/PdfFile/PdfFile.cpp @@ -773,6 +773,12 @@ void CPdfFile::SetTempFolder(const std::wstring& wsPath) return; m_pInternal->pWriter->SetTempFolder(wsPath); } +void CPdfFile::SetCore(const std::wstring& wsCoreXml) +{ + if (!m_pInternal->pWriter) + return; + m_pInternal->pWriter->SetCore(wsCoreXml); +} HRESULT CPdfFile::OnlineWordToPdf(const std::wstring& wsSrcFile, const std::wstring& wsDstFile, CConvertFromBinParams* pParams) { if (!m_pInternal->pWriter || !NSOnlineOfficeBinToPdf::ConvertBinToPdf(this, wsSrcFile, wsDstFile, false, pParams)) diff --git a/PdfFile/PdfFile.h b/PdfFile/PdfFile.h index 160901a9a6..07aab10c87 100644 --- a/PdfFile/PdfFile.h +++ b/PdfFile/PdfFile.h @@ -128,6 +128,7 @@ public: void SetPassword (const std::wstring& wsPassword); void SetDocumentID(const std::wstring& wsDocumentID); void SetTempFolder(const std::wstring& wsPath); + void SetCore (const std::wstring& wsCoreXml); HRESULT OnlineWordToPdf (const std::wstring& wsSrcFile, const std::wstring& wsDstFile, CConvertFromBinParams* pParams = NULL); HRESULT OnlineWordToPdfFromBinary(const std::wstring& wsSrcFile, const std::wstring& wsDstFile, CConvertFromBinParams* pParams = NULL); HRESULT DrawImageWith1bppMask(IGrObject* pImage, NSImages::CPixJbig2* pMaskBuffer, const unsigned int& unMaskWidth, const unsigned int& unMaskHeight, const double& dX, const double& dY, const double& dW, const double& dH); diff --git a/PdfFile/Src/PdfWriter.cpp b/PdfFile/Src/PdfWriter.cpp index a321ea4da7..17af79143a 100644 --- a/PdfFile/Src/PdfWriter.cpp +++ b/PdfFile/Src/PdfWriter.cpp @@ -523,6 +523,11 @@ void CPdfWriter::SetTempFolder(const std::wstring& wsPath) } NSDirectory::CreateDirectory(m_wsTempFolder); } +void CPdfWriter::SetCore(const std::wstring& wsCoreXml) +{ + if (!IsValid()) + return; +} std::wstring CPdfWriter::GetTempFile() { return NSFile::CFileBinary::CreateTempFileWithUniqueName(m_wsTempFolder, L"PDF"); diff --git a/PdfFile/Src/PdfWriter.h b/PdfFile/Src/PdfWriter.h index f328bd48ba..80d9ee03af 100644 --- a/PdfFile/Src/PdfWriter.h +++ b/PdfFile/Src/PdfWriter.h @@ -72,6 +72,7 @@ public: void SetPassword(const std::wstring& wsPassword); void SetDocumentID(const std::wstring& wsDocumentID); void SetTempFolder(const std::wstring& wsPath); + void SetCore(const std::wstring& wsCoreXml); std::wstring GetTempFile(); //---------------------------------------------------------------------------------------- // Функции для работы со страницей diff --git a/PdfReader/Src/RendererOutputDev.cpp b/PdfReader/Src/RendererOutputDev.cpp index 541bd60590..c729fd2d50 100644 --- a/PdfReader/Src/RendererOutputDev.cpp +++ b/PdfReader/Src/RendererOutputDev.cpp @@ -4761,7 +4761,7 @@ namespace PdfReader //for (int i = 0; i < m_sClip.size(); i++) { for (int nIndex = 0; nIndex < m_sClip[i].GetPathNum(); nIndex++) { - GfxPath *pPath = m_sClip[i].GetPath(nIndex); + GfxPath *pPath = m_sClip[i].GetPath(nIndex); bool bFlag = m_sClip[i].GetClipEo(nIndex); double *pMatrix = m_sClip[i].GetMatrix(nIndex); diff --git a/X2tConverter/src/ASCConverters.cpp b/X2tConverter/src/ASCConverters.cpp index d3bc207020..6105b74458 100644 --- a/X2tConverter/src/ASCConverters.cpp +++ b/X2tConverter/src/ASCConverters.cpp @@ -1880,6 +1880,9 @@ namespace NExtractTools if (false == password.empty()) pdfWriter.SetPassword(password); + if (false == sResult.empty()) + pdfWriter.SetCore(sResult); + int nReg = (bPaid == false) ? 0 : 1; nRes = (S_OK == pdfWriter.OnlineWordToPdfFromBinary(sPdfBinFile, sTo, &oBufferParams)) ? nRes : AVS_FILEUTILS_ERROR_CONVERT; RELEASEOBJECT(pApplicationFonts); @@ -3551,6 +3554,9 @@ namespace NExtractTools if (false == password.empty()) pdfWriter.SetPassword(password); + if (false == sResult.empty()) + pdfWriter.SetCore(sResult); + int nReg = (bPaid == false) ? 0 : 1; nRes = (S_OK == pdfWriter.OnlineWordToPdfFromBinary(sFilePathIn, sFilePathOut, &oBufferParams)) ? 0 : AVS_FILEUTILS_ERROR_CONVERT; RELEASEOBJECT(pApplicationFonts);