# Reporting Module - "%2B" (url encoded "+" character) is not recognized by the image component \[Bug or operator error?\]

**URL:** <https://forum.inductiveautomation.com/t/reporting-module-2b-url-encoded-character-is-not-recognized-by-the-image-component-bug-or-operator-error/111604>\
**Category:** Ignition\
**Tags:** perspective, reporting\
**Created:** [October 20, 2025, 7:04pm UTC](https://forum.inductiveautomation.com/t/reporting-module-2b-url-encoded-character-is-not-recognized-by-the-image-component-bug-or-operator-error/111604 "2025-10-20T19:04:00Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![Daniel\_Patterson](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/daniel_patterson/32/85894_2.png) [@Daniel\_Patterson](https://forum.inductiveautomation.com/u/Daniel_Patterson)\
**Post date:** [October 20, 2025, 7:04pm UTC](https://forum.inductiveautomation.com/t/reporting-module-2b-url-encoded-character-is-not-recognized-by-the-image-component-bug-or-operator-error/111604/1 "2025-10-20T19:04:00Z")

</div>

I have a perspective application that contains a report. I am embedding images into this report and the perspective view from an azure blob storage container using a shared access signature.

**Code that generates the signature and URL (inspiration from** [this post](https://forum.inductiveautomation.com/t/microsoft-azure-rest-api/42461) **:**

```python
import base64
from java.net import URLEncoder
from datetime import datetime,timedelta
from javax.crypto import Mac
from javax.crypto.spec import SecretKeySpec
from java.util import Base64

def getStS(signedStart,signedExpiry):
	signedPermissions = "r"
	canonicalizedResource = "/blob/<my account>/part-images" 
	signedIdentifier = ""
	signedIP = ""
	signedProtocol = ""
	signedVersion = "2024-11-04"
	signedResource = "c"
	signedSnapshotTime = ""
	signedEncryptionScope = ""
	rscc = ""
	rscd = ""
	rsce = ""
	rscl = ""
	rsct = ""
	return signedPermissions \
    + "\n" + signedStart \
    + "\n" + signedExpiry \
    + "\n"+ canonicalizedResource \
	+ "\n" + signedIdentifier \
	+ "\n" + signedIP \
	+ "\n" + signedProtocol \
	+ "\n" + signedVersion \
	+ "\n" + signedResource \
	+ "\n" + signedSnapshotTime \
	+ "\n" + signedEncryptionScope \
	+ "\n" + rscc \
	+ "\n" + rscd \
	+ "\n" + rsce \
	+ "\n" + rscl \
	+ "\n" + rsct
def sign_StS(StringToSign, account_key):

    key = base64.b64decode(account_key)
    macObject=Mac.getInstance('HmacSHA256')
    keySpec=SecretKeySpec(key,"HmacSHA256")
    macObject.init(keySpec)

    signature=macObject.doFinal(StringToSign.encode('utf-8'))
    return signature

def getPartImage(model):

	currentTime=datetime.now()
	st=currentTime.strftime('%Y-%m-%dT%H:%M:%SZ')
	endTime=currentTime+timedelta(seconds=30)
	se=endTime.strftime('%Y-%m-%dT%H:%M:%SZ')
	StringToSign=getStS(st,se)
	accountKey=<MY ACCOUNT KEY>
	signature=sign_StS(StringToSign,accountKey)
	sig=URLEncoder.encode(Base64.getEncoder().encodeToString(signature))
	return 'https://<my account>.blob.core.windows.net/part-images/'+model+'.png?sp=r&st='+st+'&se='+se+'&sv=2024-11-04&sr=c&sig='+sig

```

**The Problem:**

The perspective image component works perfectly and renders the image every time. However, in the reporting module image component, I am only able to render the image **some of the time**. Turns out that the times the image won’t render in the report image component, there is a %2B in the URL, which is the URL\_encoded “+” character.

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/d/8/d8865abfcf6d691aa94f9d3864ceeb7996432b87.png)

The url’s without that character render fine in both the perspective image component and the report image component. Is this expected behavior?

 ![image](https://us1.discourse-cdn.com/inductiveautomation/original/3X/0/2/024d1786fecf7e07504e9a72e3d1f91bb782dbcb.jpeg)

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [October 20, 2025, 7:08pm UTC](https://forum.inductiveautomation.com/t/reporting-module-2b-url-encoded-character-is-not-recognized-by-the-image-component-bug-or-operator-error/111604/2 "2025-10-20T19:08:37Z")

</div>

Sounds like a bug. You should open a support ticket.
