Bug 61459

Summary: HSLFShape.getShapeName() returns name of shapeType and not the shape name
Product: POI Reporter: Andreas Beeker <kiwiwings>
Component: HSLFAssignee: POI Developers List <dev>
Status: RESOLVED FIXED    
Severity: normal    
Priority: P2    
Version: 3.17-dev   
Target Milestone: ---   
Hardware: All   
OS: All   

Description Andreas Beeker 2017-08-26 21:06:28 UTC
The summary says it all ...

The shape name needs to be retrieved by:

EscherComplexProperty ep = HSLFShape.getEscherProperty(shape.getEscherOptRecord(), EscherProperties.GROUPSHAPE__SHAPENAME);
String name;
if (ep != null) {
   name = StringUtil.getFromUnicodeLE(ep.getComplexData());
} else {
   name = shape.getShapeName()+shape.getShapeId();
}

See also https://stackoverflow.com/questions/45855232
I'll apply the changes when POI 3.17 is out.
Comment 1 Andreas Beeker 2018-04-20 13:46:21 UTC
Applied via r1829656