Retrieving an image from rich text field?

Rich fields are stored as HTML in Salesforce, so to retrieve your image, you will have to parse the text and get the image from there. Luckily this is a fairly simple task to do.

Once queried, the field will look like this in the variable:

enter image description here

What you want is what is in the src attribute of the img tag. You can just copy the tag, or get the link and remake it in your page (using a repeat attribute or something).

Here's a sample code on how you would do this (I used a Developer Edition organization with a object from Trailhead):

Campsite__c camp = [SELECT Id, RichField__c FROM Campsite__c LIMIT 1];

System.debug('Rich field:');

String firstSubString = camp.RichField__c.substringBetween('<img', 'img>');
System.debug('First substring: ' + firstSubString);

String secondSubString = firstSubString.substringBetween('src="', '"');
System.debug('Second substring: ' + secondSubString);

String link = secondSubString.replace('amp;', '');
System.debug('Link: ' + link);

Try below code,

<apex:pageBlockTable value="{!con}" style="width:1200px;" var="c" rendered="{!if(showPB==true,true,false)}" border="2" title="Some Name">
  <apex:facet name="header">Snapshot</apex:facet>
  <apex:outputText value="{!c.snapshot__c}" escape="false"/>