drawinglayer/source/tools/emfpbrush.cxx | 84 +++++++---- drawinglayer/source/tools/emfphelperdata.cxx | 177 ++++++++++++++----------- drawinglayer/source/tools/emfppath.cxx | 16 +- drawinglayer/source/tools/emfppen.cxx | 16 +- drawinglayer/source/tools/emfpstringformat.cxx | 31 ++-- 5 files changed, 185 insertions(+), 139 deletions(-)
New commits: commit aa59b0983061d344224986aa044b6ebd3ca218af Author: Chris Sherlock <chris.sherloc...@gmail.com> AuthorDate: Thu Dec 5 08:05:35 2019 +1100 Commit: Bartosz Kosiorek <gan...@poczta.onet.pl> CommitDate: Fri Dec 20 08:41:15 2019 +0100 drawinglayer: improve more EMF+ logging - Fixed logging of objects - Fixed indenting in log statements Change-Id: If29dc2a0d781f9d4c3fd2c810aa29fe607f0a9c9 Reviewed-on: https://gerrit.libreoffice.org/84467 Tested-by: Jenkins Reviewed-by: Bartosz Kosiorek <gan...@poczta.onet.pl> diff --git a/drawinglayer/source/tools/emfpbrush.cxx b/drawinglayer/source/tools/emfpbrush.cxx index f7d316b48726..650f3e774d6e 100644 --- a/drawinglayer/source/tools/emfpbrush.cxx +++ b/drawinglayer/source/tools/emfpbrush.cxx @@ -47,14 +47,27 @@ namespace emfplushelper { } + static OUString BrushTypeToString(sal_uInt32 type) + { + switch (type) + { + case BrushTypeSolidColor: return "BrushTypeSolidColor"; + case BrushTypeHatchFill: return "BrushTypeHatchFill"; + case BrushTypeTextureFill: return "BrushTypeTextureFill"; + case BrushTypePathGradient: return "BrushTypePathGradient"; + case BrushTypeLinearGradient: return "BrushTypeLinearGradient"; + } + return ""; + } + void EMFPBrush::Read(SvStream& s, EmfPlusHelperData const & rR) { sal_uInt32 header; s.ReadUInt32(header).ReadUInt32(type); - SAL_INFO("drawinglayer", "EMF+\tbrush"); - SAL_INFO("drawinglayer", "EMF+\theader: 0x" << std::hex << header << " type: " << type << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\tHeader: 0x" << std::hex << header); + SAL_INFO("drawinglayer", "EMF+\t\t\tType: " << BrushTypeToString(type) << "(0x" << type << ")" << std::dec); switch (type) { @@ -64,7 +77,7 @@ namespace emfplushelper s.ReadUInt32(color); solidColor = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tsolid color: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tSolid color: 0x" << std::hex << color << std::dec); break; } case BrushTypeHatchFill: @@ -79,7 +92,9 @@ namespace emfplushelper hatchStyle = static_cast<EmfPlusHatchStyle>(style); solidColor = ::Color(0xff - (foregroundColor >> 24), (foregroundColor >> 16) & 0xff, (foregroundColor >> 8) & 0xff, foregroundColor & 0xff); secondColor = ::Color(0xff - (backgroundColor >> 24), (backgroundColor >> 16) & 0xff, (backgroundColor >> 8) & 0xff, backgroundColor & 0xff); - SAL_INFO("drawinglayer", "EMF+\thatch style " << style << " foregroundcolor: 0x" << solidColor.AsRGBHexString() << " background 0x" << secondColor.AsRGBHexString()); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tHatch style: 0x" << std::hex << style); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tForeground color: 0x" << solidColor.AsRGBHexString()); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tBackground color: 0x" << secondColor.AsRGBHexString()); break; } case BrushTypeTextureFill: @@ -90,15 +105,15 @@ namespace emfplushelper case BrushTypePathGradient: { s.ReadUInt32(additionalFlags).ReadInt32(wrapMode); - SAL_INFO("drawinglayer", "EMF+\tpath gradient, additional flags: 0x" << std::hex << additionalFlags << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tAdditional flags: 0x" << std::hex << additionalFlags << std::dec); sal_uInt32 color; s.ReadUInt32(color); solidColor = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tcenter color: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tCenter color: 0x" << std::hex << color << std::dec); s.ReadFloat(firstPointX).ReadFloat(firstPointY); - SAL_INFO("drawinglayer", "EMF+\tcenter point: " << firstPointX << "," << firstPointY); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tCenter point: " << firstPointX << "," << firstPointY); s.ReadInt32(surroundColorsNumber); - SAL_INFO("drawinglayer", "EMF+\t number of surround colors: " << surroundColorsNumber); + SAL_INFO("drawinglayer", "EMF+\t\t\t\t number of surround colors: " << surroundColorsNumber); if (surroundColorsNumber<0 || sal_uInt32(surroundColorsNumber)>SAL_MAX_INT32 / sizeof(::Color)) { @@ -113,7 +128,7 @@ namespace emfplushelper surroundColors[i] = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); if (i == 0) secondColor = surroundColors[0]; - SAL_INFO("drawinglayer", "EMF+\tsurround color[" << i << "]: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tSurround color[" << i << "]: 0x" << std::hex << color << std::dec); } if (additionalFlags & 0x01) @@ -121,7 +136,7 @@ namespace emfplushelper sal_Int32 pathLength; s.ReadInt32(pathLength); - SAL_INFO("drawinglayer", "EMF+\tpath length: " << pathLength); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPath length: " << pathLength); sal_uInt64 const pos = s.Tell(); @@ -129,8 +144,10 @@ namespace emfplushelper sal_Int32 pathPoints, pathFlags; s.ReadUInt32(pathHeader).ReadInt32(pathPoints).ReadInt32(pathFlags); - SAL_INFO("drawinglayer", "EMF+\tpath (brush path gradient)"); - SAL_INFO("drawinglayer", "EMF+\theader: 0x" << std::hex << pathHeader << " points: " << std::dec << pathPoints << " additional flags: 0x" << std::hex << pathFlags << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPath (brush path gradient)"); + SAL_INFO("drawinglayer", "EMF+\t\t\t\t\tHeader: 0x" << std::hex << pathHeader); + SAL_INFO("drawinglayer", "EMF+\t\t\t\t\tPoints: " << std::dec << pathPoints); + SAL_INFO("drawinglayer", "EMF+\t\t\t\t\tAdditional flags: 0x" << std::hex << pathFlags << std::dec); path.reset( new EMFPPath(pathPoints) ); path->Read(s, pathFlags); @@ -140,7 +157,8 @@ namespace emfplushelper const ::basegfx::B2DRectangle aBounds(::basegfx::utils::getRange(path->GetPolygon(rR, false))); secondPointX = aBounds.getWidth(); secondPointY = aBounds.getHeight(); - SAL_INFO("drawinglayer", "EMF+\t polygon bounding box: " << aBounds.getMinX() << "," << aBounds.getMinY() << " " << aBounds.getWidth() << "x" << aBounds.getHeight()); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPolygon bounding box: " << aBounds.getMinX() << "," << aBounds.getMinY() << " " + << aBounds.getWidth() << "x" << aBounds.getHeight()); } else { @@ -157,20 +175,21 @@ namespace emfplushelper const ::basegfx::B2DRectangle aBounds(::basegfx::utils::getRange(path->GetPolygon(rR, false))); secondPointX = aBounds.getWidth(); secondPointY = aBounds.getHeight(); - SAL_INFO("drawinglayer", "EMF+\t polygon bounding box: " << aBounds.getMinX() << "," << aBounds.getMinY() << " " << aBounds.getWidth() << "x" << aBounds.getHeight()); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPolygon bounding box: " << aBounds.getMinX() << "," << aBounds.getMinY() << " " + << aBounds.getWidth() << "x" << aBounds.getHeight()); } if (additionalFlags & 0x02) { EmfPlusHelperData::readXForm(s, brush_transformation); hasTransformation = true; - SAL_INFO("drawinglayer", "EMF+\tuse brush transformation: " << brush_transformation); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tUse brush transformation: " << brush_transformation); } if (additionalFlags & 0x08) { s.ReadInt32(blendPoints); - SAL_INFO("drawinglayer", "EMF+\tuse blend, points: " << blendPoints); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tuse blend, points: " << blendPoints); if (blendPoints<0 || sal_uInt32(blendPoints)>SAL_MAX_INT32 / (2 * sizeof(float))) blendPoints = SAL_MAX_INT32 / (2 * sizeof(float)); blendPositions.reset( new float[2 * blendPoints] ); @@ -179,20 +198,20 @@ namespace emfplushelper for (int i = 0; i < blendPoints; i++) { s.ReadFloat(blendPositions[i]); - SAL_INFO("drawinglayer", "EMF+\tposition[" << i << "]: " << blendPositions[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tposition[" << i << "]: " << blendPositions[i]); } for (int i = 0; i < blendPoints; i++) { s.ReadFloat(blendFactors[i]); - SAL_INFO("drawinglayer", "EMF+\tfactor[" << i << "]: " << blendFactors[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tFactor[" << i << "]: " << blendFactors[i]); } } if (additionalFlags & 0x04) { s.ReadInt32(colorblendPoints); - SAL_INFO("drawinglayer", "EMF+\tuse color blend, points: " << colorblendPoints); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tUse color blend, points: " << colorblendPoints); if (colorblendPoints<0 || sal_uInt32(colorblendPoints)>SAL_MAX_INT32 / sizeof(float)) { @@ -217,7 +236,7 @@ namespace emfplushelper { s.ReadUInt32(color); colorblendColors[i] = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tcolor[" << i << "]: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tColor[" << i << "]: 0x" << std::hex << color << std::dec); } } @@ -226,16 +245,17 @@ namespace emfplushelper case BrushTypeLinearGradient: { s.ReadUInt32(additionalFlags).ReadInt32(wrapMode); - SAL_INFO("drawinglayer", "EMF+\tlinear gradient, additional flags: 0x" << std::hex << additionalFlags << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tLinear gradient, additional flags: 0x" << std::hex << additionalFlags << std::dec); s.ReadFloat(firstPointX).ReadFloat(firstPointY).ReadFloat(secondPointX).ReadFloat(secondPointY); - SAL_INFO("drawinglayer", "EMF+\tFirst gradinet point: " << firstPointX << ":" << firstPointY << ", second gradient point " << secondPointX << ":" << secondPointY); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tFirst gradinet point: " << firstPointX << ":" << firstPointY + << ", second gradient point " << secondPointX << ":" << secondPointY); sal_uInt32 color; s.ReadUInt32(color); solidColor = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tfirst color: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tfirst color: 0x" << std::hex << color << std::dec); s.ReadUInt32(color); secondColor = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tsecond color: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tsecond color: 0x" << std::hex << color << std::dec); // repeated colors, unknown meaning, see http://www.aces.uiuc.edu/~jhtodd/Metafile/MetafileRecords/ObjectBrush.html s.ReadUInt32(color); @@ -245,13 +265,13 @@ namespace emfplushelper { EmfPlusHelperData::readXForm(s, brush_transformation); hasTransformation = true; - SAL_INFO("drawinglayer", "EMF+\tuse brush transformation: " << brush_transformation); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tUse brush transformation: " << brush_transformation); } if (additionalFlags & 0x08) { s.ReadInt32(blendPoints); - SAL_INFO("drawinglayer", "EMF+\tuse blend, points: " << blendPoints); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tUse blend, points: " << blendPoints); if (blendPoints<0 || sal_uInt32(blendPoints)>SAL_MAX_INT32 / (2 * sizeof(float))) blendPoints = SAL_MAX_INT32 / (2 * sizeof(float)); blendPositions.reset( new float[2 * blendPoints] ); @@ -260,20 +280,20 @@ namespace emfplushelper for (int i = 0; i < blendPoints; i++) { s.ReadFloat(blendPositions[i]); - SAL_INFO("drawinglayer", "EMF+\tposition[" << i << "]: " << blendPositions[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPosition[" << i << "]: " << blendPositions[i]); } for (int i = 0; i < blendPoints; i++) { s.ReadFloat(blendFactors[i]); - SAL_INFO("drawinglayer", "EMF+\tfactor[" << i << "]: " << blendFactors[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tFactor[" << i << "]: " << blendFactors[i]); } } if (additionalFlags & 0x04) { s.ReadInt32(colorblendPoints); - SAL_INFO("drawinglayer", "EMF+\tuse color blend, points: " << colorblendPoints); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tUse color blend, points: " << colorblendPoints); if (colorblendPoints<0 || sal_uInt32(colorblendPoints)>SAL_MAX_INT32 / sizeof(float)) { @@ -291,14 +311,14 @@ namespace emfplushelper for (int i = 0; i < colorblendPoints; i++) { s.ReadFloat(colorblendPositions[i]); - SAL_INFO("drawinglayer", "EMF+\tposition[" << i << "]: " << colorblendPositions[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tPosition[" << i << "]: " << colorblendPositions[i]); } for (int i = 0; i < colorblendPoints; i++) { s.ReadUInt32(color); colorblendColors[i] = ::Color(0xff - (color >> 24), (color >> 16) & 0xff, (color >> 8) & 0xff, color & 0xff); - SAL_INFO("drawinglayer", "EMF+\tcolor[" << i << "]: 0x" << std::hex << color << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tColor[" << i << "]: 0x" << std::hex << color << std::dec); } } @@ -306,7 +326,7 @@ namespace emfplushelper } default: { - SAL_INFO("drawinglayer", "EMF+\tunhandled brush type: " << std::hex << type << std::dec); + SAL_WARN("drawinglayer", "EMF+\tunhandled brush type: " << std::hex << type << std::dec); } } } diff --git a/drawinglayer/source/tools/emfphelperdata.cxx b/drawinglayer/source/tools/emfphelperdata.cxx index 3a0ffc4d793b..51a727bdcc61 100644 --- a/drawinglayer/source/tools/emfphelperdata.cxx +++ b/drawinglayer/source/tools/emfphelperdata.cxx @@ -106,6 +106,23 @@ namespace emfplushelper return ""; } + static OUString emfObjectToName(sal_uInt16 type) + { + switch (type) + { + case EmfPlusObjectTypeBrush: return "EmfPlusObjectTypeBrush"; + case EmfPlusObjectTypePen: return "EmfPlusObjectTypePen"; + case EmfPlusObjectTypePath: return "EmfPlusObjectTypePath"; + case EmfPlusObjectTypeRegion: return "EmfPlusObjectTypeRegion"; + case EmfPlusObjectTypeImage: return "EmfPlusObjectTypeImage"; + case EmfPlusObjectTypeFont: return "EmfPlusObjectTypeFont"; + case EmfPlusObjectTypeStringFormat: return "EmfPlusObjectTypeStringFormat"; + case EmfPlusObjectTypeImageAttributes: return "EmfPlusObjectTypeImageAttributes"; + case EmfPlusObjectTypeCustomLineCap: return "EmfPlusObjectTypeCustomLineCap"; + } + return ""; + } + static OUString PixelOffsetModeToString(sal_uInt16 nPixelOffset) { switch (nPixelOffset) @@ -226,11 +243,13 @@ namespace emfplushelper void EmfPlusHelperData::processObjectRecord(SvMemoryStream& rObjectStream, sal_uInt16 flags, sal_uInt32 dataSize, bool bUseWholeStream) { - sal_uInt32 index; - SAL_INFO("drawinglayer", "EMF+ Object slot: " << (flags & 0xff) << " flags: " << (flags & 0xff00)); - index = flags & 0xff; + sal_uInt16 objecttype = flags & 0x7f00; + sal_uInt16 index = flags & 0xff; + SAL_INFO("drawinglayer", "EMF+ Object: " << emfObjectToName(objecttype) << " (0x" << objecttype << ")"); + SAL_INFO("drawinglayer", "EMF+\tObject slot: " << index); + SAL_INFO("drawinglayer", "EMF+\tFlags: " << (flags & 0xff00)); - switch (flags & 0x7f00) + switch (objecttype) { case EmfPlusObjectTypeBrush: { @@ -252,8 +271,9 @@ namespace emfplushelper sal_Int32 points; rObjectStream.ReadUInt32(header).ReadInt32(points).ReadUInt32(pathFlags); - SAL_INFO("drawinglayer", "EMF+\tpath"); - SAL_INFO("drawinglayer", "EMF+\theader: 0x" << std::hex << header << " points: " << std::dec << points << " additional flags: 0x" << std::hex << pathFlags << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\tHeader: 0x" << std::hex << header); + SAL_INFO("drawinglayer", "EMF+\t\tPoints: " << std::dec << points); + SAL_INFO("drawinglayer", "EMF+\t\tAdditional flags: 0x" << std::hex << pathFlags << std::dec); EMFPPath *path = new EMFPPath(points); maEMFPObjects[index].reset(path); path->Read(rObjectStream, pathFlags); @@ -438,7 +458,7 @@ namespace emfplushelper if ( iter != map.end() ) { map.erase( iter ); - SAL_INFO("drawinglayer", "stack index: " << index << " found and erased"); + SAL_INFO("drawinglayer", "EMF+\t\tStack index: " << index << " found and erased"); } wmfemfhelper::PropertyHolder state = mrPropertyHolders.Current(); @@ -458,7 +478,7 @@ namespace emfplushelper maWorldTransform = state.getTransformation(); rState.setClipPolyPolygon( state.getClipPolyPolygon() ); mappingChanged(); - SAL_INFO("drawinglayer", "stack index: " << index << " found, maWorldTransform: " << maWorldTransform); + SAL_INFO("drawinglayer", "EMF+\t\tStack index: " << index << " found, maWorldTransform: " << maWorldTransform); } } @@ -683,7 +703,7 @@ namespace emfplushelper if (isColor) // use Color { - SAL_INFO("drawinglayer", "EMF+\t Fill polygon, ARGB color: 0x" << std::hex << brushIndexOrColor << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\t Fill polygon, ARGB color: 0x" << std::hex << brushIndexOrColor << std::dec); // EMF Alpha (1 byte): An 8-bit unsigned integer that specifies the transparency of the background, // ranging from 0 for completely transparent to 0xFF for completely opaque. @@ -697,7 +717,7 @@ namespace emfplushelper else // use Brush { EMFPBrush* brush = static_cast<EMFPBrush*>( maEMFPObjects[brushIndexOrColor & 0xff].get() ); - SAL_INFO("drawinglayer", "EMF+\t Fill polygon, brush slot: " << brushIndexOrColor << " (brush type: " << (brush ? brush->GetType() : -1) << ")"); + SAL_INFO("drawinglayer", "EMF+\t\t Fill polygon, brush slot: " << brushIndexOrColor << " (brush type: " << (brush ? brush->GetType() : -1) << ")"); // give up in case something wrong happened if( !brush ) @@ -784,7 +804,7 @@ namespace emfplushelper if (brush->blendPositions) { - SAL_INFO("drawinglayer", "EMF+\t\tuse blend"); + SAL_INFO("drawinglayer", "EMF+\t\tUse blend"); // store the blendpoints in the vector for (int i = 0; i < brush->blendPoints; i++) @@ -808,7 +828,7 @@ namespace emfplushelper } else if (brush->colorblendPositions) { - SAL_INFO("drawinglayer", "EMF+\t\tuse color blend"); + SAL_INFO("drawinglayer", "EMF+\t\tUse color blend"); // store the colorBlends in the vector for (int i = 0; i < brush->colorblendPoints; i++) @@ -1016,7 +1036,7 @@ namespace emfplushelper break; } - SAL_INFO("drawinglayer", "EMF+ " << emfTypeToName(type)); + SAL_INFO("drawinglayer", "EMF+ " << emfTypeToName(type) << " (0x" << std::hex << type << ")" << std::dec); SAL_INFO("drawinglayer", "EMF+\t record size: " << size); SAL_INFO("drawinglayer", "EMF+\t flags: 0x" << std::hex << flags << std::dec); SAL_INFO("drawinglayer", "EMF+\t data size: " << dataSize); @@ -1063,13 +1083,15 @@ namespace emfplushelper sal_uInt32 header, version; rMS.ReadUInt32(header).ReadUInt32(version).ReadUInt32(mnHDPI).ReadUInt32(mnVDPI); - SAL_INFO("drawinglayer", "EMF+ Header"); - SAL_INFO("drawinglayer", "EMF+\theader: 0x" << std::hex << header << " version: " << std::dec << version << " horizontal DPI: " << mnHDPI << " vertical DPI: " << mnVDPI << " dual: " << (flags & 1)); + SAL_INFO("drawinglayer", "EMF+\tHeader: 0x" << std::hex << header); + SAL_INFO("drawinglayer", "EMF+\tVersion: " << std::dec << version); + SAL_INFO("drawinglayer", "EMF+\tHorizontal DPI: " << mnHDPI); + SAL_INFO("drawinglayer", "EMF+\tVertical DPI: " << mnVDPI); + SAL_INFO("drawinglayer", "EMF+\tDual: " << ((flags & 1) ? "true" : "false")); break; } case EmfPlusRecordTypeEndOfFile: { - SAL_INFO("drawinglayer", "EMF+ EndOfFile"); break; } case EmfPlusRecordTypeComment: @@ -1078,8 +1100,7 @@ namespace emfplushelper unsigned char data; OUString hexdata; - SAL_INFO("drawinglayer", "EMF+ Comment"); - SAL_INFO("drawinglayer", "\tdatasize: 0x" << std::hex << dataSize << std::dec); + SAL_INFO("drawinglayer", "EMF+\tDatasize: 0x" << std::hex << dataSize << std::dec); for (sal_uInt32 i=0; i<dataSize; i++) { @@ -1095,15 +1116,14 @@ namespace emfplushelper hexdata += "0x" + padding + OUString::number(data, 16) + " "; } - SAL_INFO("drawinglayer", "\t" << hexdata); + SAL_INFO("drawinglayer", "EMF+\t" << hexdata); #endif break; } case EmfPlusRecordTypeGetDC: { bIsGetDCProcessing = true; - SAL_INFO("drawinglayer", "EMF+ GetDC"); - SAL_INFO("drawinglayer", "EMF+\talready used in svtools wmf/emf filter parser"); + SAL_INFO("drawinglayer", "EMF+\tAlready used in svtools wmf/emf filter parser"); break; } case EmfPlusRecordTypeObject: @@ -1123,15 +1143,15 @@ namespace emfplushelper if (type == EmfPlusRecordTypeFillPie) { rMS.ReadUInt32(brushIndexOrColor); - SAL_INFO("drawinglayer", "EMF+ FillPie colorOrIndex: " << brushIndexOrColor); + SAL_INFO("drawinglayer", "EMF+\t FillPie colorOrIndex: " << brushIndexOrColor); } else if (type == EmfPlusRecordTypeDrawPie) { - SAL_INFO("drawinglayer", "EMF+ DrawPie"); + SAL_INFO("drawinglayer", "EMF+\t DrawPie"); } else { - SAL_INFO("drawinglayer", "EMF+ DrawArc"); + SAL_INFO("drawinglayer", "EMF+\t DrawArc"); } rMS.ReadFloat(startAngle).ReadFloat(sweepAngle); @@ -1158,7 +1178,7 @@ namespace emfplushelper std::swap(endAngle, startAngle); } - SAL_INFO("drawinglayer", "EMF+\t adjusted angles: start " << + SAL_INFO("drawinglayer", "EMF+\t Adjusted angles: start " << basegfx::rad2deg(startAngle) << ", end: " << basegfx::rad2deg(endAngle) << " startAngle: " << startAngle << " sweepAngle: " << sweepAngle); const ::basegfx::B2DPoint centerPoint(dx + 0.5 * dw, dy + 0.5 * dh); @@ -1190,7 +1210,7 @@ namespace emfplushelper if (path) EMFPPlusFillPolygon(path->GetPolygon(*this), flags & 0x8000, brushIndexOrColor); else - SAL_WARN("drawinglayer", "EmfPlusRecordTypeFillPath missing path"); + SAL_WARN("drawinglayer", "EMF+\tEmfPlusRecordTypeFillPath missing path"); } break; case EmfPlusRecordTypeFillRegion: @@ -1198,7 +1218,7 @@ namespace emfplushelper sal_uInt32 index = flags & 0xff; sal_uInt32 brushIndexOrColor; rMS.ReadUInt32(brushIndexOrColor); - SAL_INFO("drawinglayer", "EMF+ FillRegion slot: " << index); + SAL_INFO("drawinglayer", "EMF+\t FillRegion slot: " << index); EMFPPlusFillPolygon(static_cast<EMFPRegion*>(maEMFPObjects[flags & 0xff].get())->regionPolyPolygon, flags & 0x8000, brushIndexOrColor); } @@ -1216,10 +1236,10 @@ namespace emfplushelper rMS.ReadUInt32(brushIndexOrColor); } - SAL_INFO("drawinglayer", "EMF+ " << (type == EmfPlusRecordTypeFillEllipse ? "Fill" : "Draw") << "Ellipse slot: " << (flags & 0xff)); + SAL_INFO("drawinglayer", "EMF+\t " << (type == EmfPlusRecordTypeFillEllipse ? "Fill" : "Draw") << "Ellipse slot: " << (flags & 0xff)); float dx, dy, dw, dh; ReadRectangle(rMS, dx, dy, dw, dh, bool(flags & 0x4000)); - SAL_INFO("drawinglayer", "EMF+ RectData: " << dx << "," << dy << " " << dw << "x" << dh); + SAL_INFO("drawinglayer", "EMF+\t RectData: " << dx << "," << dy << " " << dw << "x" << dh); ::basegfx::B2DPolyPolygon polyPolygon( ::basegfx::utils::createPolygonFromEllipse(::basegfx::B2DPoint(dx + 0.5 * dw, dy + 0.5 * dh), 0.5 * dw, 0.5 * dh)); @@ -1241,13 +1261,13 @@ namespace emfplushelper if (EmfPlusRecordTypeFillRects == type) { - SAL_INFO("drawinglayer", "EMF+ FillRects"); + SAL_INFO("drawinglayer", "EMF+\t FillRects"); rMS.ReadUInt32(brushIndexOrColor); SAL_INFO("drawinglayer", "EMF+\t" << (isColor ? "color" : "brush index") << ": 0x" << std::hex << brushIndexOrColor << std::dec); } else { - SAL_INFO("drawinglayer", "EMF+ DrawRects"); + SAL_INFO("drawinglayer", "EMF+\t DrawRects"); } rMS.ReadInt32(rectangles); @@ -1263,7 +1283,7 @@ namespace emfplushelper polygon.append(Map(x, y + height)); polygon.setClosed(true); - SAL_INFO("drawinglayer", "EMF+\t rectangle: " << x << ", "<< y << " " << width << "x" << height); + SAL_INFO("drawinglayer", "EMF+\t\t rectangle: " << x << ", "<< y << " " << width << "x" << height); ::basegfx::B2DPolyPolygon polyPolygon(polygon); if (type == EmfPlusRecordTypeFillRects) @@ -1281,8 +1301,8 @@ namespace emfplushelper rMS.ReadUInt32(brushIndexOrColor); rMS.ReadInt32(points); - SAL_INFO("drawinglayer", "EMF+ FillPolygon in slot: " << index << " points: " << points); - SAL_INFO("drawinglayer", "EMF+\t: " << ((flags & 0x8000) ? "color" : "brush index") << " 0x" << std::hex << brushIndexOrColor << std::dec); + SAL_INFO("drawinglayer", "EMF+\t FillPolygon in slot: " << index << " points: " << points); + SAL_INFO("drawinglayer", "EMF+\t " << ((flags & 0x8000) ? "Color" : "Brush index") << " : 0x" << std::hex << brushIndexOrColor << std::dec); EMFPPath path(points, true); path.Read(rMS, flags); @@ -1295,7 +1315,7 @@ namespace emfplushelper { sal_uInt32 points; rMS.ReadUInt32(points); - SAL_INFO("drawinglayer", "EMF+ DrawLines in slot: " << (flags & 0xff) << " points: " << points); + SAL_INFO("drawinglayer", "EMF+\t DrawLines in slot: " << (flags & 0xff) << " points: " << points); EMFPPath path(points, true); path.Read(rMS, flags); @@ -1309,14 +1329,13 @@ namespace emfplushelper { sal_uInt32 penIndex; rMS.ReadUInt32(penIndex); - SAL_INFO("drawinglayer", "EMF+ DrawPath"); - SAL_INFO("drawinglayer", "EMF+\tpen: " << penIndex); + SAL_INFO("drawinglayer", "EMF+\t Pen: " << penIndex); EMFPPath* path = dynamic_cast<EMFPPath*>(maEMFPObjects[flags & 0xff].get()); if (path) EMFPPlusDrawPolygon(path->GetPolygon(*this), penIndex); else - SAL_WARN("drawinglayer", "EmfPlusRecordTypeDrawPath missing path"); + SAL_WARN("drawinglayer", "\t\tEmfPlusRecordTypeDrawPath missing path"); break; } @@ -1327,7 +1346,8 @@ namespace emfplushelper ::basegfx::B2DPoint aStartPoint, aControlPointA, aControlPointB, aEndPoint; ::basegfx::B2DPolygon aPolygon; rMS.ReadUInt32(aCount); - SAL_INFO("drawinglayer", "EMF+ DrawBeziers slot: " << (flags & 0xff) << "Number of points: " << aCount); + SAL_INFO("drawinglayer", "EMF+\t DrawBeziers slot: " << (flags & 0xff)); + SAL_INFO("drawinglayer", "EMF+\t Number of points: " << aCount); SAL_WARN_IF((aCount - 1) % 3 != 0, "drawinglayer", "EMF+\t Bezier Draw not support number of points other than 4, 7, 10, 13, 16..."); if (aCount < 4) @@ -1371,8 +1391,8 @@ namespace emfplushelper sal_uInt32 imageAttributesId; sal_Int32 sourceUnit; rMS.ReadUInt32(imageAttributesId).ReadInt32(sourceUnit); - SAL_INFO("drawinglayer", "EMF+ " << (type == EmfPlusRecordTypeDrawImagePoints ? "DrawImagePoints" : "DrawImage") << " image attributes Id: " << imageAttributesId << " source unit: " << sourceUnit); - SAL_INFO("drawinglayer", "EMF+\tTODO: use image attributes"); + SAL_INFO("drawinglayer", "EMF+\t " << (type == EmfPlusRecordTypeDrawImagePoints ? "DrawImagePoints" : "DrawImage") << " image attributes Id: " << imageAttributesId << " source unit: " << sourceUnit); + SAL_INFO("drawinglayer", "EMF+\t TODO: use image attributes"); // For DrawImage and DrawImagePoints, source unit of measurement type must be 1 pixel if (sourceUnit == UnitTypePixel && maEMFPObjects[flags & 0xff].get()) @@ -1381,7 +1401,7 @@ namespace emfplushelper float sx, sy, sw, sh; ReadRectangle(rMS, sx, sy, sw, sh); ::tools::Rectangle aSource(Point(sx, sy), Size(sw, sh)); - SAL_INFO("drawinglayer", "EMF+ " << (type == EmfPlusRecordTypeDrawImagePoints ? "DrawImagePoints" : "DrawImage") << " source rectangle: " << sx << "," << sy << " " << sw << "x" << sh); + SAL_INFO("drawinglayer", "EMF+\t " << (type == EmfPlusRecordTypeDrawImagePoints ? "DrawImagePoints" : "DrawImage") << " source rectangle: " << sx << "," << sy << " " << sw << "x" << sh); ::basegfx::B2DPoint aDstPoint; ::basegfx::B2DSize aDstSize; @@ -1437,7 +1457,7 @@ namespace emfplushelper BitmapEx aBmp(image.graphic.GetBitmapEx()); aBmp.Crop(aSource); Size aSize(aBmp.GetSizePixel()); - SAL_INFO("drawinglayer", "EMF+\t bitmap size: " << aSize.Width() << "x" << aSize.Height()); + SAL_INFO("drawinglayer", "EMF+\t Bitmap size: " << aSize.Width() << "x" << aSize.Height()); if (aSize.Width() > 0 && aSize.Height() > 0) { mrTargetHolders.Current().append( @@ -1459,18 +1479,19 @@ namespace emfplushelper } else { - SAL_WARN("drawinglayer", "EMF+ DrawImage(Points) Wrong EMF+ file. Only Unit Type Pixel is support by EMF+ specification for DrawImage(Points)"); + SAL_WARN("drawinglayer", "EMF+\tDrawImage(Points) Wrong EMF+ file. Only Unit Type Pixel is support by EMF+ specification for DrawImage(Points)"); } break; } case EmfPlusRecordTypeDrawString: { - SAL_INFO("drawinglayer", "EMF+ DrawString"); sal_uInt32 brushId; sal_uInt32 formatId; sal_uInt32 stringLength; rMS.ReadUInt32(brushId).ReadUInt32(formatId).ReadUInt32(stringLength); - SAL_INFO("drawinglayer", "EMF+ DrawString brushId: " << brushId << " formatId: " << formatId << " length: " << stringLength); + SAL_INFO("drawinglayer", "EMF+\t DrawString brushId: " << brushId); + SAL_INFO("drawinglayer", "EMF+\t FormatId: " << formatId); + SAL_INFO("drawinglayer", "EMF+\t Length: " << stringLength); if (flags & 0x8000) { @@ -1478,10 +1499,10 @@ namespace emfplushelper float lx, ly, lw, lh; rMS.ReadFloat(lx).ReadFloat(ly).ReadFloat(lw).ReadFloat(lh); - SAL_INFO("drawinglayer", "EMF+ DrawString layoutRect: " << lx << "," << ly << " - " << lw << "x" << lh); + SAL_INFO("drawinglayer", "EMF+\t DrawString layoutRect: " << lx << "," << ly << " - " << lw << "x" << lh); // parse the string const OUString text = read_uInt16s_ToOUString(rMS, stringLength); - SAL_INFO("drawinglayer", "EMF+ DrawString string: " << text); + SAL_INFO("drawinglayer", "EMF+\t DrawString string: " << text); // get the stringFormat from the Object table ( this is OPTIONAL and may be nullptr ) const EMFPStringFormat *stringFormat = dynamic_cast<EMFPStringFormat*>(maEMFPObjects[formatId & 0xff].get()); // get the font from the flags @@ -1509,7 +1530,7 @@ namespace emfplushelper double stringAlignmentHorizontalOffset = 0.0; if (stringFormat) { - SAL_WARN_IF(stringFormat->DirectionRightToLeft(), "drawinglayer", "EMF+ DrawString Alignment TODO For a right-to-left layout rectangle, the origin should be at the upper right."); + SAL_WARN_IF(stringFormat->DirectionRightToLeft(), "drawinglayer", "EMF+\t DrawString Alignment TODO For a right-to-left layout rectangle, the origin should be at the upper right."); if (stringFormat->stringAlignment == StringAlignmentNear) // Alignment is to the left side of the layout rectangle (lx, ly, lw, lh) { @@ -1618,18 +1639,18 @@ namespace emfplushelper } else { - SAL_WARN("drawinglayer", "EMF+ DrawString TODO - drawing with brush not yet supported"); + SAL_WARN("drawinglayer", "EMF+\t DrawString TODO - drawing with brush not yet supported"); } break; } case EmfPlusRecordTypeSetPageTransform: { rMS.ReadFloat(mfPageScale); - SAL_INFO("drawinglayer", "EMF+\tscale: " << mfPageScale << " unit: " << UnitTypeToString(flags)); + SAL_INFO("drawinglayer", "EMF+\t Scale: " << mfPageScale << " unit: " << UnitTypeToString(flags)); if ((flags == UnitTypeDisplay) || (flags == UnitTypeWorld)) { - SAL_WARN("drawinglayer", "EMF+ file error. UnitTypeDisplay and UnitTypeWorld are not supported by SetPageTransform in EMF+ specification."); + SAL_WARN("drawinglayer", "EMF+\t file error. UnitTypeDisplay and UnitTypeWorld are not supported by SetPageTransform in EMF+ specification."); } else { @@ -1643,7 +1664,7 @@ namespace emfplushelper case EmfPlusRecordTypeSetRenderingOrigin: { rMS.ReadInt32(mnOriginX).ReadInt32(mnOriginY); - SAL_INFO("drawinglayer", "EMF+ SetRenderingOrigin, [x,y]: " << mnOriginX << "," << mnOriginY); + SAL_INFO("drawinglayer", "EMF+\t SetRenderingOrigin, [x,y]: " << mnOriginX << "," << mnOriginY); break; } case EmfPlusRecordTypeSetTextContrast: @@ -1654,7 +1675,7 @@ namespace emfplushelper mbSetTextContrast = true; mnTextContrast = flags & 0xFFF; SAL_WARN_IF(mnTextContrast > UPPERGAMMA || mnTextContrast < LOWERGAMMA, - "drawinglayer", "Gamma value is not with bounds 1000 to 2200, value is " << mnTextContrast); + "drawinglayer", "EMF+\t Gamma value is not with bounds 1000 to 2200, value is " << mnTextContrast); mnTextContrast = std::min(mnTextContrast, UPPERGAMMA); mnTextContrast = std::max(mnTextContrast, LOWERGAMMA); SAL_INFO("drawinglayer", "EMF+\t Text contrast: " << (mnTextContrast / 1000) << " gamma"); @@ -1664,7 +1685,7 @@ namespace emfplushelper { sal_uInt8 nTextRenderingHint = (flags & 0xFF) >> 1; SAL_INFO("drawinglayer", "EMF+\t Text rendering hint: " << TextRenderingHintToString(nTextRenderingHint)); - SAL_WARN("drawinglayer", "TODO\t EMF+ SetTextRenderingHint"); + SAL_WARN("drawinglayer", "EMF+\t TODO SetTextRenderingHint"); break; } case EmfPlusRecordTypeSetAntiAliasMode: @@ -1673,25 +1694,25 @@ namespace emfplushelper sal_uInt8 nSmoothingMode = (flags & 0xFE00) >> 1; SAL_INFO("drawinglayer", "EMF+\t Antialiasing: " << (bUseAntiAlias ? "enabled" : "disabled")); SAL_INFO("drawinglayer", "EMF+\t Smoothing mode: " << SmoothingModeToString(nSmoothingMode)); - SAL_WARN("drawinglayer", "TODO\t EMF+ SetAntiAliasMode"); + SAL_WARN("drawinglayer", "EMF+\t TODO SetAntiAliasMode"); break; } case EmfPlusRecordTypeSetInterpolationMode: { sal_uInt16 nInterpolationMode = flags & 0xFF; SAL_INFO("drawinglayer", "EMF+\t Interpolation mode: " << InterpolationModeToString(nInterpolationMode)); - SAL_WARN("drawinglayer", "TODO\t EMF+ InterpolationMode"); + SAL_WARN("drawinglayer", "EMF+\t TODO InterpolationMode"); break; } case EmfPlusRecordTypeSetPixelOffsetMode: { SAL_INFO("drawinglayer", "EMF+\t Pixel offset mode: " << PixelOffsetModeToString(flags)); - SAL_WARN("drawinglayer", "TODO\t EMF+ SetPixelOffsetMode"); + SAL_WARN("drawinglayer", "EMF+\t TODO SetPixelOffsetMode"); break; } case EmfPlusRecordTypeSetCompositingQuality: { - SAL_INFO("drawinglayer", "TODO\t EMF+ SetCompositingQuality"); + SAL_INFO("drawinglayer", "EMF+\t TODO SetCompositingQuality"); break; } case EmfPlusRecordTypeSave: @@ -1742,7 +1763,7 @@ namespace emfplushelper case EmfPlusRecordTypeResetWorldTransform: { maWorldTransform.identity(); - SAL_INFO("drawinglayer", "EMF+\t: " << maWorldTransform); + SAL_INFO("drawinglayer", "EMF+\t World transform: " << maWorldTransform); mappingChanged(); break; } @@ -1866,11 +1887,11 @@ namespace emfplushelper { int combineMode = (flags >> 8) & 0xf; - SAL_INFO("drawinglayer", "EMF+ SetClipRect combine mode: " << combineMode); + SAL_INFO("drawinglayer", "EMF+\t SetClipRect combine mode: " << combineMode); float dx, dy, dw, dh; ReadRectangle(rMS, dx, dy, dw, dh); - SAL_INFO("drawinglayer", "EMF+ RectData: " << dx << "," << dy << " " << dw << "x" << dh); + SAL_INFO("drawinglayer", "EMF+\t RectData: " << dx << "," << dy << " " << dw << "x" << dh); ::basegfx::B2DPoint mappedPoint1(Map(dx, dy)); ::basegfx::B2DPoint mappedPoint2(Map(dx + dw, dy + dh)); @@ -1882,14 +1903,15 @@ namespace emfplushelper mappedPoint2.getX(), mappedPoint2.getY()))); - HandleNewClipRegion(combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), combineMode, polyPolygon), mrTargetHolders, mrPropertyHolders); + HandleNewClipRegion(combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), + combineMode, polyPolygon), mrTargetHolders, mrPropertyHolders); break; } case EmfPlusRecordTypeSetClipPath: { int combineMode = (flags >> 8) & 0xf; - SAL_INFO("drawinglayer", "EMF+ SetClipPath combine mode: " << combineMode); - SAL_INFO("drawinglayer", "EMF+\tpath in slot: " << (flags & 0xff)); + SAL_INFO("drawinglayer", "EMF+\t SetClipPath combine mode: " << combineMode); + SAL_INFO("drawinglayer", "EMF+\t Path in slot: " << (flags & 0xff)); EMFPPath *path = static_cast<EMFPPath*>(maEMFPObjects[flags & 0xff].get()); if (!path) @@ -1900,14 +1922,15 @@ namespace emfplushelper ::basegfx::B2DPolyPolygon& clipPoly(path->GetPolygon(*this)); - HandleNewClipRegion( combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), combineMode, clipPoly), mrTargetHolders, mrPropertyHolders); + HandleNewClipRegion(combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), + combineMode, clipPoly), mrTargetHolders, mrPropertyHolders); break; } case EmfPlusRecordTypeSetClipRegion: { int combineMode = (flags >> 8) & 0xf; - SAL_INFO("drawinglayer", "EMF+ SetClipRegion"); - SAL_INFO("drawinglayer", "EMF+\tregion in slot: " << (flags & 0xff) << " combine mode: " << combineMode); + SAL_INFO("drawinglayer", "EMF+\t Region in slot: " << (flags & 0xff)); + SAL_INFO("drawinglayer", "EMF+\t Combine mode: " << combineMode); EMFPRegion *region = static_cast<EMFPRegion*>(maEMFPObjects[flags & 0xff].get()); if (!region) { @@ -1915,14 +1938,15 @@ namespace emfplushelper break; } - HandleNewClipRegion(combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), combineMode, region->regionPolyPolygon), mrTargetHolders, mrPropertyHolders); + HandleNewClipRegion(combineClip(mrPropertyHolders.Current().getClipPolyPolygon(), + combineMode, region->regionPolyPolygon), mrTargetHolders, mrPropertyHolders); break; } case EmfPlusRecordTypeOffsetClip: { float dx, dy; rMS.ReadFloat(dx).ReadFloat(dy); - SAL_INFO("drawinglayer", "EMF+ OffsetClip, Offset x:" << dx << ", y:" << dy); + SAL_INFO("drawinglayer", "EMF+\tOffset x:" << dx << ", y:" << dy); basegfx::B2DPolyPolygon aPolyPolygon( mrPropertyHolders.Current().getClipPolyPolygon()); @@ -1944,28 +1968,27 @@ namespace emfplushelper } case EmfPlusRecordTypeDrawDriverString: { - SAL_INFO("drawinglayer", "EMF+ DrawDriverString, flags: 0x" << std::hex << flags << std::dec); sal_uInt32 brushIndexOrColor; sal_uInt32 optionFlags; sal_uInt32 hasMatrix; sal_uInt32 glyphsCount; rMS.ReadUInt32(brushIndexOrColor).ReadUInt32(optionFlags).ReadUInt32(hasMatrix).ReadUInt32(glyphsCount); - SAL_INFO("drawinglayer", "EMF+\t: " << ((flags & 0x8000) ? "color" : "brush index") << " 0x" << std::hex << brushIndexOrColor << std::dec); - SAL_INFO("drawinglayer", "EMF+\toption flags: 0x" << std::hex << optionFlags << std::dec); - SAL_INFO("drawinglayer", "EMF+\thas matrix: " << hasMatrix); - SAL_INFO("drawinglayer", "EMF+\tglyphs: " << glyphsCount); + SAL_INFO("drawinglayer", "EMF+\t " << ((flags & 0x8000) ? "Color" : "Brush index") << ": 0x" << std::hex << brushIndexOrColor << std::dec); + SAL_INFO("drawinglayer", "EMF+\t Option flags: 0x" << std::hex << optionFlags << std::dec); + SAL_INFO("drawinglayer", "EMF+\t Has matrix: " << hasMatrix); + SAL_INFO("drawinglayer", "EMF+\t Glyphs: " << glyphsCount); if ((optionFlags & 1) && glyphsCount > 0) { std::unique_ptr<float[]> charsPosX(new float[glyphsCount]); std::unique_ptr<float[]> charsPosY(new float[glyphsCount]); OUString text = read_uInt16s_ToOUString(rMS, glyphsCount); - SAL_INFO("drawinglayer", "EMF+ DrawDriverString string: " << text); + SAL_INFO("drawinglayer", "EMF+\t DrawDriverString string: " << text); for (sal_uInt32 i = 0; i<glyphsCount; i++) { rMS.ReadFloat(charsPosX[i]).ReadFloat(charsPosY[i]); - SAL_INFO("drawinglayer", "EMF+\tglyphPosition[" << i << "]: " << charsPosX[i] << "," << charsPosY[i]); + SAL_INFO("drawinglayer", "EMF+\t\t glyphPosition[" << i << "]: " << charsPosX[i] << "," << charsPosY[i]); } basegfx::B2DHomMatrix transform; diff --git a/drawinglayer/source/tools/emfppath.cxx b/drawinglayer/source/tools/emfppath.cxx index 52f22393f3c7..2f3844b7cc2a 100644 --- a/drawinglayer/source/tools/emfppath.cxx +++ b/drawinglayer/source/tools/emfppath.cxx @@ -114,7 +114,7 @@ namespace emfplushelper if (((i - last_normal )% 3) == 1) { polygon.setNextControlPoint (p - 1, mapped); - SAL_INFO ("drawinglayer", "polygon append next: " << p - 1 << " mapped: " << mapped.getX () << "," << mapped.getY ()); + SAL_INFO ("drawinglayer", "EMF+\t\tPolygon append next: " << p - 1 << " mapped: " << mapped.getX () << "," << mapped.getY ()); continue; } else if (((i - last_normal) % 3) == 2) @@ -131,12 +131,12 @@ namespace emfplushelper } polygon.append (mapped); - SAL_INFO ("drawinglayer", "polygon append point: " << pPoints [i*2] << "," << pPoints [i*2 + 1] << " mapped: " << mapped.getX () << ":" << mapped.getY ()); + SAL_INFO ("drawinglayer", "EMF+\t\tPolygon append point: " << pPoints [i*2] << "," << pPoints [i*2 + 1] << " mapped: " << mapped.getX () << ":" << mapped.getY ()); if (hasPrev) { polygon.setPrevControlPoint (p, prev); - SAL_INFO ("drawinglayer", "polygon append prev: " << p << " mapped: " << prev.getX () << "," << prev.getY ()); + SAL_INFO ("drawinglayer", "EMF+\t\tPolygon append prev: " << p << " mapped: " << prev.getX () << "," << prev.getY ()); hasPrev = false; } @@ -147,7 +147,7 @@ namespace emfplushelper // closed polygon polygon.setClosed (true); aPolygon.append (polygon); - SAL_INFO ("drawinglayer", "close polygon"); + SAL_INFO ("drawinglayer", "EMF+\t\tClose polygon"); last_normal = i + 1; p = 0; polygon.clear (); @@ -167,17 +167,17 @@ namespace emfplushelper #if OSL_DEBUG_LEVEL > 1 for (unsigned int i=0; i<aPolygon.count(); i++) { polygon = aPolygon.getB2DPolygon(i); - SAL_INFO ("drawinglayer", "polygon: " << i); + SAL_INFO ("drawinglayer", "EMF+\t\tPolygon: " << i); for (unsigned int j=0; j<polygon.count(); j++) { ::basegfx::B2DPoint point = polygon.getB2DPoint(j); - SAL_INFO ("drawinglayer", "point: " << point.getX() << "," << point.getY()); + SAL_INFO ("drawinglayer", "EMF+\t\t\tPoint: " << point.getX() << "," << point.getY()); if (polygon.isPrevControlPointUsed(j)) { point = polygon.getPrevControlPoint(j); - SAL_INFO ("drawinglayer", "prev: " << point.getX() << "," << point.getY()); + SAL_INFO ("drawinglayer", "EMF+\t\t\tPrev: " << point.getX() << "," << point.getY()); } if (polygon.isNextControlPointUsed(j)) { point = polygon.getNextControlPoint(j); - SAL_INFO ("drawinglayer", "next: " << point.getX() << "," << point.getY()); + SAL_INFO ("drawinglayer", "EMF+\t\t\tNext: " << point.getX() << "," << point.getY()); } } } diff --git a/drawinglayer/source/tools/emfppen.cxx b/drawinglayer/source/tools/emfppen.cxx index 9536a7027615..353d6faea687 100644 --- a/drawinglayer/source/tools/emfppen.cxx +++ b/drawinglayer/source/tools/emfppen.cxx @@ -104,9 +104,11 @@ namespace emfplushelper sal_uInt32 graphicsVersion, penType; int i; s.ReadUInt32(graphicsVersion).ReadUInt32(penType).ReadUInt32(penDataFlags).ReadUInt32(penUnit).ReadFloat(penWidth); - SAL_INFO("drawinglayer", "EMF+\tpen"); - SAL_INFO("drawinglayer", "EMF+\t graphics version: 0x" << std::hex << graphicsVersion << " type (must be set to zero): " << penType << - " pen data flags: 0x" << penDataFlags << " unit: " << penUnit << " width: " << std::dec << penWidth); + SAL_INFO("drawinglayer", "EMF+\t\tGraphics version: 0x" << std::hex << graphicsVersion); + SAL_INFO("drawinglayer", "EMF+\t\tType: " << penType); + SAL_INFO("drawinglayer", "EMF+\t\tPen data flags: 0x" << penDataFlags); + SAL_INFO("drawinglayer", "EMF+\t\tUnit: " << penUnit); + SAL_INFO("drawinglayer", "EMF+\t\tWidth: " << std::dec << penWidth); penWidth = penWidth * EmfPlusHelperData::getUnitToPixelMultiplier(static_cast<UnitType>(penUnit)); @@ -199,7 +201,7 @@ namespace emfplushelper sal_Int32 dashPatternLen; s.ReadInt32(dashPatternLen); - SAL_INFO("drawinglayer", "EMF+\t\tdashPatternLen: " << dashPatternLen); + SAL_INFO("drawinglayer", "EMF+\t\t\tdashPatternLen: " << dashPatternLen); if (dashPatternLen<0 || sal_uInt32(dashPatternLen)>SAL_MAX_INT32 / sizeof(float)) { @@ -211,7 +213,7 @@ namespace emfplushelper for (i = 0; i < dashPatternLen; i++) { s.ReadFloat(dashPattern[i]); - SAL_INFO("drawinglayer", "EMF+\t\t\tdashPattern[" << i << "]: " << dashPattern[i]); + SAL_INFO("drawinglayer", "EMF+\t\t\t\tdashPattern[" << i << "]: " << dashPattern[i]); } } @@ -247,7 +249,7 @@ namespace emfplushelper if (penDataFlags & PenDataCustomStartCap) { s.ReadInt32(customStartCapLen); - SAL_INFO("drawinglayer", "EMF+\t\tcustomStartCapLen: " << customStartCapLen); + SAL_INFO("drawinglayer", "EMF+\t\t\tcustomStartCapLen: " << customStartCapLen); sal_uInt64 const pos = s.Tell(); customStartCap.reset( new EMFPCustomLineCap() ); @@ -264,7 +266,7 @@ namespace emfplushelper if (penDataFlags & PenDataCustomEndCap) { s.ReadInt32(customEndCapLen); - SAL_INFO("drawinglayer", "EMF+\t\tcustomEndCapLen: " << customEndCapLen); + SAL_INFO("drawinglayer", "EMF+\t\t\tcustomEndCapLen: " << customEndCapLen); sal_uInt64 const pos = s.Tell(); customEndCap.reset( new EMFPCustomLineCap() ); diff --git a/drawinglayer/source/tools/emfpstringformat.cxx b/drawinglayer/source/tools/emfpstringformat.cxx index 5ff13b4c2d49..ad08f14a21be 100644 --- a/drawinglayer/source/tools/emfpstringformat.cxx +++ b/drawinglayer/source/tools/emfpstringformat.cxx @@ -199,21 +199,22 @@ namespace emfplushelper language >>= 16; digitLanguage >>= 16; SAL_WARN_IF((header >> 12) != 0xdbc01, "drawinglayer", "Invalid header - not 0xdbc01"); - SAL_INFO("drawinglayer", "EMF+\t string format"); - SAL_INFO("drawinglayer", "\t\tHeader: 0x" << std::hex << (header >> 12) << " version: 0x" << (header & 0x1fff) << std::dec); - SAL_INFO("drawinglayer", "\t\tStringFormatFlags: " << StringFormatFlags(stringFormatFlags)); - SAL_INFO("drawinglayer", "\t\tLanguage: sublangid: 0x" << std::hex << (language >> 10) << ", primarylangid: 0x" << (language & 0xF800)); - SAL_INFO("drawinglayer", "\t\tLineAlign: " << StringAlignmentString(lineAlign)); - SAL_INFO("drawinglayer", "\t\tDigitSubstitution: " << DigitSubstitutionString(digitSubstitution)); - SAL_INFO("drawinglayer", "\t\tDigitLanguage: sublangid: 0x" << std::hex << (digitLanguage >> 10) << ", primarylangid: 0x" << (digitLanguage & 0xF800)); - SAL_INFO("drawinglayer", "\t\tFirstTabOffset: " << firstTabOffset); - SAL_INFO("drawinglayer", "\t\tHotkeyPrefix: " << HotkeyPrefixString(hotkeyPrefix)); - SAL_INFO("drawinglayer", "\t\tLeadingMargin: " << leadingMargin); - SAL_INFO("drawinglayer", "\t\tTrailingMargin: " << trailingMargin); - SAL_INFO("drawinglayer", "\t\tTracking: " << tracking); - SAL_INFO("drawinglayer", "\t\tTrimming: " << StringTrimmingString(trimming)); - SAL_INFO("drawinglayer", "\t\tTabStopCount: " << tabStopCount); - SAL_INFO("drawinglayer", "\t\tRangeCount: " << rangeCount); + SAL_INFO("drawinglayer", "EMF+\tString format"); + SAL_INFO("drawinglayer", "EMF+\t\tHeader: 0x" << std::hex << (header >> 12)); + SAL_INFO("drawinglayer", "EMF+\t\tVersion: 0x" << (header & 0x1fff) << std::dec); + SAL_INFO("drawinglayer", "EMF+\t\tStringFormatFlags: " << StringFormatFlags(stringFormatFlags)); + SAL_INFO("drawinglayer", "EMF+\t\tLanguage: sublangid: 0x" << std::hex << (language >> 10) << ", primarylangid: 0x" << (language & 0xF800)); + SAL_INFO("drawinglayer", "EMF+\t\tLineAlign: " << StringAlignmentString(lineAlign)); + SAL_INFO("drawinglayer", "EMF+\t\tDigitSubstitution: " << DigitSubstitutionString(digitSubstitution)); + SAL_INFO("drawinglayer", "EMF+\t\tDigitLanguage: sublangid: 0x" << std::hex << (digitLanguage >> 10) << ", primarylangid: 0x" << (digitLanguage & 0xF800)); + SAL_INFO("drawinglayer", "EMF+\t\tFirstTabOffset: " << firstTabOffset); + SAL_INFO("drawinglayer", "EMF+\t\tHotkeyPrefix: " << HotkeyPrefixString(hotkeyPrefix)); + SAL_INFO("drawinglayer", "EMF+\t\tLeadingMargin: " << leadingMargin); + SAL_INFO("drawinglayer", "EMF+\t\tTrailingMargin: " << trailingMargin); + SAL_INFO("drawinglayer", "EMF+\t\tTracking: " << tracking); + SAL_INFO("drawinglayer", "EMF+\t\tTrimming: " << StringTrimmingString(trimming)); + SAL_INFO("drawinglayer", "EMF+\t\tTabStopCount: " << tabStopCount); + SAL_INFO("drawinglayer", "EMF+\t\tRangeCount: " << rangeCount); SAL_WARN_IF(stringAlignment != StringAlignment::StringAlignmentNear, "drawinglayer", "EMF+\t TODO EMFPStringFormat:StringAlignment"); SAL_WARN_IF(lineAlign != StringAlignment::StringAlignmentNear, "drawinglayer", "EMF+\t TODO EMFPStringFormat:lineAlign"); _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits