https://issues.apache.org/bugzilla/show_bug.cgi?id=53568

--- Comment #5 from Yegor Kozlov <[email protected]> ---
Thanks for the good catch, applied in svn in r1396539

Regards,
Yegor

> 
> Attached please find the testing case (sample-image.xlsx) that I found wrong
> on the part.getPackageRelationship().getId() 
> 
> I use my testing class TestReadExcelImage to manually check the problem.
> 
> Please check the worksheet: IMAGE4
> There are 3 pictures inside which reference to 2 images.
> When getting the pictureData of the first picture using
> picture.getPictureData(), a null value is return:
> 
> >>output: picture.getPictureData() is null, try finding in relations
> 
> Then I loop the picture.getDrawing().getRelations() to output and check the
> part.getPackageRelationship().getId():
> 
> >>output: part.getPackageRelationship().getId()=rId2
> >>output: part.getPackageRelationship().getId()=rId3
> 
> I then extract the excel file and check the XML file:
> \xl\drawings\_rels\drawing3.xml.rels
> 
> The id of relationship are: rId2, rId1 which doesn't match with the one
> using part.getPackageRelationship().getId()
> 
> So, I think that the part.getPackageRelationship().getId() must be wrong.
> 
> I then use the picture.getDrawing().getRelationById(embedId) to get the
> corresponding picutureData. This time, the information returned is correct:
> 
> >>output: pictureName=/xl/media/image2.jpeg
> >>output: Fm position = [20, 3]
> >>output: To position = [22, 3]
> 
> Afterward, I get the pictureData of the 2nd and 3rd picture using the
> picture.getPictureData(). Again, the information returned is incorrect:
> 
> >>output: pictureName=/xl/media/image2.jpeg
> >>output: Fm position = [2, 4]
> >>output: To position = [12, 7]
> >>output: pictureName=/xl/media/image2.jpeg
> >>output: Fm position = [15, 5]
> >>output: To position = [25, 8]
> 
> The name of the image should be image3.jpg instead of image2.jpeg
> 
> After I applied the fix to the picture.getPictureData(), there seems to be
> no problem then. 
> I still don't know why the part.getPackageRelationship().getId() return a
> wrong value but fixing picture.getPictureData() using the
> getDrawing().getRelationById(blipId) seems to be a quick fix.
> 
> Hope this help. Thanks.

-- 
You are receiving this mail because:
You are the assignee for the bug.

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to