Commit 9816ce63 authored by Oleg.Korshul's avatar Oleg.Korshul Committed by Alexander Trofimov

поддержка стека рельсов, баги

git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@55880 954022d7-b5bf-4e40-9824-e11837661b57
parent e18a7f98
......@@ -2557,14 +2557,16 @@ HRESULT CAVSOfficeDrawingConverter::SaveThemeXml(SAFEARRAY* pBinaryTheme, LONG l
m_oReader.Init(pData, lStart, lLength);
m_oReader.m_pRels->Clear();
m_oReader.m_pRels->StartTheme();
// reset rels
SetDstContentRels();
//m_oReader.m_pRels->Clear();
//m_oReader.m_pRels->StartTheme();
smart_ptr<PPTX::Theme> pTheme = new PPTX::Theme();
pTheme->fromPPTY(&m_oReader);
m_oXmlWriter.ClearNoAttack();
m_oReader.m_pRels->CloseRels();
CString strThemePath = (CString)bsThemePath;
pTheme->toXmlWriter(&m_oXmlWriter);
......@@ -2578,7 +2580,9 @@ HRESULT CAVSOfficeDrawingConverter::SaveThemeXml(SAFEARRAY* pBinaryTheme, LONG l
else
strTemp += (strFileName + _T(".rels"));
m_oReader.m_pRels->SaveRels(strTemp);
BSTR bsTempSave = strTemp.AllocSysString();
SaveDstContentRels(bsTempSave);
SysFreeString(bsTempSave);
m_oXmlWriter.ClearNoAttack();
......@@ -3203,6 +3207,11 @@ HRESULT CAVSOfficeDrawingConverter::GetRecordXml(SAFEARRAY* pBinaryObj, LONG lSt
if (NULL == pBinaryObj || bsXml == NULL)
return S_FALSE;
if (lDocType != XMLWRITER_DOC_TYPE_DOCX)
m_oReader.m_pRels->m_pManager->m_bIsWord = FALSE;
else
m_oReader.m_pRels->m_pManager->m_bIsWord = TRUE;
BYTE* pData = (BYTE*)pBinaryObj->pvData;
m_oReader.Init(pData, lStart, lLength);
m_oReader.m_pSourceArray = pBinaryObj;
......
......@@ -690,6 +690,7 @@ xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\
m_oReader.m_stackRels.Add(m_oReader.m_pRels);
NSBinPptxRW::CRelsGenerator* pGenerator = new NSBinPptxRW::CRelsGenerator(m_oReader.m_pRels->m_pManager);
m_oReader.m_pRels = pGenerator;
m_oReader.m_pRels->StartRels();
}
return S_OK;
}
......@@ -741,6 +742,12 @@ xmlns:xdr=\"http://schemas.openxmlformats.org/drawingml/2006/spreadsheetDrawing\
m_oImageManager.m_bIsWord = TRUE;
m_oReader.m_strFolder = CString(ParamValue.bstrVal);
}
else if (name == _T("SourceFileDir2"))
{
m_oReader.m_pRels->m_pManager = &m_oImageManager;
m_oImageManager.m_bIsWord = FALSE;
m_oReader.m_strFolder = CString(ParamValue.bstrVal);
}
else if (name == _T("UseConvertion2007"))
{
m_bIsUseConvertion2007 = (ParamValue.boolVal == VARIANT_TRUE) ? true : false;
......
......@@ -436,6 +436,7 @@ namespace PPTX
{
pFill->tileRect = new PPTX::Logic::Rect();
pFill->tileRect->fromPPTY(pReader);
pFill->tileRect->m_name = _T("a:tileRect");
}
default:
{
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment