diff options
author | Caolán McNamara <caolanm@redhat.com> | 2012-06-24 23:57:42 +0100 |
---|---|---|
committer | Caolán McNamara <caolanm@redhat.com> | 2012-06-25 14:19:02 +0100 |
commit | d5909e1452a87cb5434d144b01d368e52d64fd68 (patch) | |
tree | d0038fb3c6d564f42bad334b1c35d7041dd096de /cppcanvas/source | |
parent | c7f4d44aacbb3c45050130304362ce3b1f604fdb (diff) |
replace custom readString with read_uInt16s_ToOUString
replace custom readString with more efficient and foolproof
read_uInt16s_ToOUString
Change-Id: Idf5f85adad008b4bd775badd83f55b152a6ddaaf
Diffstat (limited to 'cppcanvas/source')
-rw-r--r-- | cppcanvas/source/mtfrenderer/emfplus.cxx | 22 |
1 files changed, 2 insertions, 20 deletions
diff --git a/cppcanvas/source/mtfrenderer/emfplus.cxx b/cppcanvas/source/mtfrenderer/emfplus.cxx index b99a53fa9873..79a9f74c8012 100644 --- a/cppcanvas/source/mtfrenderer/emfplus.cxx +++ b/cppcanvas/source/mtfrenderer/emfplus.cxx @@ -1169,24 +1169,6 @@ namespace cppcanvas } } - static XubString readString (SvMemoryStream& rMF, sal_uInt32 stringLength) - { - sal_uInt16 *chars = new sal_uInt16[stringLength]; - - for( sal_uInt32 i=0; i<stringLength; i++) { - rMF >> chars[i]; - EMFP_DEBUG (printf ("EMF+\tglyph[%u]: 0x%04x\n", - (unsigned int)i, chars[i])); - } - - // create and add the text action - rtl::OUString text(chars, stringLength); - - delete[] chars; - - return text; - } - double ImplRenderer::setFont (sal_uInt8 objectId, const ActionFactoryParameters& rParms, OutDevState& rState) { EMFPFont *font = (EMFPFont*) aObjects[ objectId ]; @@ -1503,7 +1485,7 @@ namespace cppcanvas EMFP_DEBUG (printf ("EMF+ DrawString layoutRect: %f,%f - %fx%f\n", lx, ly, lw, lh)); - XubString text = readString ( rMF, stringLength ); + rtl::OUString text = read_uInt16s_ToOUString(rMF, stringLength); double cellSize = setFont (flags & 0xff, rFactoryParms, rState); SET_TEXT_COLOR( brushId ); @@ -1659,7 +1641,7 @@ namespace cppcanvas float *charsPosX = new float[glyphsCount]; float *charsPosY = new float[glyphsCount]; - XubString text = readString (rMF, glyphsCount); + rtl::OUString text = read_uInt16s_ToOUString(rMF, glyphsCount); for( sal_uInt32 i=0; i<glyphsCount; i++) { rMF >> charsPosX[i] >> charsPosY[i]; |