Commit 6d0ff00d authored by Oleg.Korshul's avatar Oleg.Korshul Committed by Alexander Trofimov

(2.0.0.156) additional param nobase64

git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@53112 954022d7-b5bf-4e40-9824-e11837661b57
parent 45dcaed4
......@@ -53,6 +53,8 @@ private:
CString m_sFontDir;
bool m_bSaveChartAsImg;
Writers::FileWriter* m_pCurFileWriter;
bool m_bIsNoBase64Save;
public:
DECLARE_PROTECT_FINAL_CONSTRUCT()
......@@ -60,6 +62,7 @@ public:
{
m_oBinaryFileWriter = NULL;
m_bSaveChartAsImg = false;
m_bIsNoBase64Save = false;
}
~CAVSOfficeDocxFile2()
{
......@@ -129,16 +132,27 @@ public:
BYTE* pbBinBuffer = oBufferedStream.GetBuffer();
int nBinBufferLen = oBufferedStream.GetPosition();
int nBase64BufferLen = Base64::Base64EncodeGetRequiredLength(nBinBufferLen, Base64::B64_BASE64_FLAG_NOCRLF);
BYTE* pbBase64Buffer = new BYTE[nBase64BufferLen];
if(TRUE == Base64::Base64Encode(pbBinBuffer, nBinBufferLen, (LPSTR)pbBase64Buffer, &nBase64BufferLen, Base64::B64_BASE64_FLAG_NOCRLF))
if (m_bIsNoBase64Save)
{
CFile oFile;
oFile.CreateFileW(bsFileDst);
oFile.WriteStringUTF8(m_oBinaryFileWriter->WriteFileHeader(nBinBufferLen));
oFile.WriteFile(pbBase64Buffer, nBase64BufferLen);
oFile.WriteFile(pbBinBuffer, nBinBufferLen);
oFile.CloseFile();
}
else
{
int nBase64BufferLen = Base64::Base64EncodeGetRequiredLength(nBinBufferLen, Base64::B64_BASE64_FLAG_NOCRLF);
BYTE* pbBase64Buffer = new BYTE[nBase64BufferLen];
if(TRUE == Base64::Base64Encode(pbBinBuffer, nBinBufferLen, (LPSTR)pbBase64Buffer, &nBase64BufferLen, Base64::B64_BASE64_FLAG_NOCRLF))
{
CFile oFile;
oFile.CreateFileW(bsFileDst);
oFile.WriteStringUTF8(m_oBinaryFileWriter->WriteFileHeader(nBinBufferLen));
oFile.WriteFile(pbBase64Buffer, nBase64BufferLen);
oFile.CloseFile();
}
}
RELEASEOBJECT(m_oBinaryFileWriter);
RELEASEINTERFACE(pFontPicker);
RELEASEINTERFACE(pOfficeDrawingConverter);
......@@ -181,6 +195,10 @@ public:
{
m_bSaveChartAsImg = VARIANT_TRUE == ParamValue.boolVal;
}
else if (_T("NoBase64Save") == sParamName && ParamValue.vt == VT_BOOL)
{
m_bIsNoBase64Save = (VARIANT_TRUE == ParamValue.boolVal);
}
return S_OK;
}
STDMETHOD(GetAdditionalParam)(BSTR ParamName, VARIANT* ParamValue)
......
......@@ -2,6 +2,6 @@
//2
//0
//0
//155
#define INTVER 2,0,0,155
#define STRVER "2,0,0,155\0"
//156
#define INTVER 2,0,0,156
#define STRVER "2,0,0,156\0"
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