mirror of
https://github.com/ONLYOFFICE/core.git
synced 2026-04-07 13:55:33 +08:00
(2.0.0.156) additional param nobase64
git-svn-id: svn://fileserver/activex/AVS/Sources/TeamlabOffice/trunk/ServerComponents@53112 954022d7-b5bf-4e40-9824-e11837661b57
This commit is contained in:
committed by
Alexander Trofimov
parent
45dcaed46e
commit
6d0ff00dcc
@ -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"
|
||||
|
||||
Reference in New Issue
Block a user