Posted 22 October 2022, 4:22 pm EST
Does anyone know how to include PNG images in an XML document serving as the data source such that a picture control can be bound to them? Is it even possible?
Forums Home / ActiveReports / ActiveReports v2
Posted by: jim.wilson on 22 October 2022, 4:22 pm EST
Posted 22 October 2022, 4:22 pm EST
Does anyone know how to include PNG images in an XML document serving as the data source such that a picture control can be bound to them? Is it even possible?
Posted 28 October 2022, 2:04 am EST
Hi Jim,
One of the ways you can do this is to embed the image as a byte array in your XML Document. Then you will be able to load the image in Page/RDL Reports and Section Reports as well.
To convert the image to ByteArray please refer to the following lines of code:
using (MemoryStream m = new MemoryStream())
{
image.Save(m, image.RawFormat);
ByteArray = m.ToArray();
}
Regards,
Akshay
SampleXMLImageDoc.zip
Posted 1 November 2022, 10:58 pm EST - Updated 2 November 2022, 8:27 pm EST
Akshay,
Thank you for your clear response with sample code. What you provided was beyond my needs, but it did put me on the path to track down and validate a rather simple answer.
string imageContentForXml = Convert.ToBase64String(File.ReadAllBytes("C:/users/jim/1.jpg")))
I recommend adding a note in the documentation about images in XML data sources should be Base64 encoded.
Thanks again.
Jim
Posted 3 November 2022, 4:31 am EST
Hi Jim,
Thanks for the suggestion. As long as you can load your image into a System.Drawing.Image object you can load that image into the Picture control of Section Reports to display your image into the report through code.
Although, we have listed the supported image formats for Picture Control in our documentation.
Picture control supports Base64 string, Byte[], BMP, JPG, JPEG, JPE, GIF, PNG, EMF, and WMF formats in both GDI and CrossPlatform compatibility modes.
You can learn more about Picture control on the following page of our documentation:
https://www.grapecity.com/activereportsnet/docs/latest/online/picture.html
Regards,
Akshay
Posted 3 November 2022, 9:50 am EST
Totally missed that. I was looking at the documentation from a data source perspective rather than from a Picture control perspective. What through me off a bit (my own fault) is that in the designer I loaded an image in the Picture control, saved the rpx file, opened the rpx file in VS Code, and noted encoding that was not base64. I drew a wrong conclusion. Anyway, it’s all good thanks to your assistance. Your team is great. Keep up the good work!