summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--fpdfsdk/fxedit/fxet_edit.cpp54
1 files changed, 27 insertions, 27 deletions
diff --git a/fpdfsdk/fxedit/fxet_edit.cpp b/fpdfsdk/fxedit/fxet_edit.cpp
index f11f631907..863486bdea 100644
--- a/fpdfsdk/fxedit/fxet_edit.cpp
+++ b/fpdfsdk/fxedit/fxet_edit.cpp
@@ -8,6 +8,7 @@
#include <algorithm>
#include <memory>
+#include <sstream>
#include <utility>
#include "core/fpdfapi/font/cpdf_font.h"
@@ -52,9 +53,9 @@ CFX_ByteString GetFontSetString(IPVT_FontMap* pFontMap,
if (sFontAlias.GetLength() <= 0 || fFontSize <= 0)
return CFX_ByteString();
- CFX_ByteTextBuf sRet;
+ std::ostringstream sRet;
sRet << "/" << sFontAlias << " " << fFontSize << " Tf\n";
- return sRet.MakeString();
+ return CFX_ByteString(sRet);
}
void DrawTextString(CFX_RenderDevice* pDevice,
@@ -523,8 +524,8 @@ CFX_ByteString CFX_Edit::GetEditAppearanceStream(CFX_Edit* pEdit,
else
pIterator->SetAt(0);
- CFX_ByteTextBuf sEditStream;
- CFX_ByteTextBuf sWords;
+ std::ostringstream sEditStream;
+ std::ostringstream sWords;
int32_t nCurFontIndex = -1;
CFX_PointF ptOld;
CFX_PointF ptNew;
@@ -537,9 +538,9 @@ CFX_ByteString CFX_Edit::GetEditAppearanceStream(CFX_Edit* pEdit,
if (bContinuous) {
if (place.LineCmp(oldplace) != 0) {
- if (sWords.GetSize() > 0) {
- sEditStream << GetWordRenderString(sWords.MakeString());
- sWords.Clear();
+ if (sWords.tellp() > 0) {
+ sEditStream << GetWordRenderString(CFX_ByteString(sWords));
+ sWords.str("");
}
CPVT_Word word;
@@ -564,9 +565,9 @@ CFX_ByteString CFX_Edit::GetEditAppearanceStream(CFX_Edit* pEdit,
CPVT_Word word;
if (pIterator->GetWord(word)) {
if (word.nFontIndex != nCurFontIndex) {
- if (sWords.GetSize() > 0) {
- sEditStream << GetWordRenderString(sWords.MakeString());
- sWords.Clear();
+ if (sWords.tellp() > 0) {
+ sEditStream << GetWordRenderString(CFX_ByteString(sWords));
+ sWords.str("");
}
sEditStream << GetFontSetString(pEdit->GetFontMap(), word.nFontIndex,
word.fFontSize);
@@ -602,13 +603,13 @@ CFX_ByteString CFX_Edit::GetEditAppearanceStream(CFX_Edit* pEdit,
}
}
- if (sWords.GetSize() > 0) {
- sEditStream << GetWordRenderString(sWords.MakeString());
- sWords.Clear();
+ if (sWords.tellp() > 0) {
+ sEditStream << GetWordRenderString(CFX_ByteString(sWords));
+ sWords.str("");
}
- CFX_ByteTextBuf sAppStream;
- if (sEditStream.GetSize() > 0) {
+ std::ostringstream sAppStream;
+ if (sEditStream.tellp() > 0) {
int32_t nHorzScale = pEdit->GetHorzScale();
if (nHorzScale != 100) {
sAppStream << nHorzScale << " Tz\n";
@@ -619,10 +620,10 @@ CFX_ByteString CFX_Edit::GetEditAppearanceStream(CFX_Edit* pEdit,
sAppStream << fCharSpace << " Tc\n";
}
- sAppStream << sEditStream;
+ sAppStream << sEditStream.str();
}
- return sAppStream.MakeString();
+ return CFX_ByteString(sAppStream);
}
// static
@@ -636,7 +637,7 @@ CFX_ByteString CFX_Edit::GetSelectAppearanceStream(
CFX_Edit_Iterator* pIterator = pEdit->GetIterator();
pIterator->SetAt(pRange->BeginPos);
- CFX_ByteTextBuf sRet;
+ std::ostringstream sRet;
while (pIterator->NextWord()) {
CPVT_WordPlace place = pIterator->GetAt();
if (place > pRange->EndPos)
@@ -651,7 +652,7 @@ CFX_ByteString CFX_Edit::GetSelectAppearanceStream(
}
}
- return sRet.MakeString();
+ return CFX_ByteString(sRet);
}
// static
@@ -678,7 +679,7 @@ void CFX_Edit::DrawEdit(CFX_RenderDevice* pDevice,
const FX_COLORREF crWhite = ArgbEncode(255, 255, 255, 255);
const FX_COLORREF crSelBK = ArgbEncode(255, 0, 51, 113);
- CFX_ByteTextBuf sTextBuf;
+ std::ostringstream sTextBuf;
int32_t nFontIndex = -1;
CFX_PointF ptBT;
CFX_RenderDevice::StateRestorer restorer(pDevice);
@@ -735,13 +736,13 @@ void CFX_Edit::DrawEdit(CFX_RenderDevice* pDevice,
if (bContinuous) {
if (place.LineCmp(oldplace) != 0 || word.nFontIndex != nFontIndex ||
crOldFill != crCurFill) {
- if (sTextBuf.GetLength() > 0) {
+ if (sTextBuf.tellp() > 0) {
DrawTextString(
pDevice, CFX_PointF(ptBT.x + ptOffset.x, ptBT.y + ptOffset.y),
pFontMap->GetPDFFont(nFontIndex), fFontSize, pUser2Device,
- sTextBuf.MakeString(), crOldFill, nHorzScale);
+ CFX_ByteString(sTextBuf), crOldFill, nHorzScale);
- sTextBuf.Clear();
+ sTextBuf.str("");
}
nFontIndex = word.nFontIndex;
ptBT = word.ptWord;
@@ -749,8 +750,7 @@ void CFX_Edit::DrawEdit(CFX_RenderDevice* pDevice,
}
sTextBuf << GetPDFWordString(pFontMap, word.nFontIndex, word.Word,
- SubWord)
- .AsStringC();
+ SubWord);
} else {
DrawTextString(
pDevice, CFX_PointF(word.ptWord.x + ptOffset.x,
@@ -763,11 +763,11 @@ void CFX_Edit::DrawEdit(CFX_RenderDevice* pDevice,
}
}
- if (sTextBuf.GetLength() > 0) {
+ if (sTextBuf.tellp() > 0) {
DrawTextString(pDevice,
CFX_PointF(ptBT.x + ptOffset.x, ptBT.y + ptOffset.y),
pFontMap->GetPDFFont(nFontIndex), fFontSize, pUser2Device,
- sTextBuf.MakeString(), crOldFill, nHorzScale);
+ CFX_ByteString(sTextBuf), crOldFill, nHorzScale);
}
}
}