I create a text(rich) field for an Object and put an image on this field. But when I want to show it on the page I wrote by VisualForce, the image turns to be a URL like this:

<img src="http://www.gdhtcm.com/uploadfiles/20170314103122705.png"></img>

How to show the image besides using Static Resource?

  • use <img src={!your_link}/>? – Novarg Mar 20 '17 at 10:14

In RichText Field the Image is stored as below. You have to use String operation to get the Image URL.

enter image description here

Book__c book = [SELECT Id, Rich_Text__c FROM Book__c LIMIT 1];
String imgTag = book.Rich_Text__c.substringBetween('<img', 'img>');
String imgUrl = imgTag.substringBetween('src="', '"');
String imgUrlFinal = imgUrl.replace('amp;', '');         
System.debug('imgUrlFinal : ' + imgUrlFinal);

Use this imgUrl in VisualForce page to show the image.

<img src="{!imgUrl}"/>
  • Thanks!But do you know why the image URL I get will include a string 'amp;' and I have to delete it to get the correct image URL? – Chopin Chuong Mar 21 '17 at 10:04
  • You can remove the amp; by replace function of the String class. – Saroj Bera Mar 21 '17 at 12:59

you can bind with Resource for fetching image from static resouce

<apex:image url="{!$Resource.**put your resource name here!!**}"/>

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.