you can do it in the Section Format Event of the Report, here is a VB Code example where im resizing a BlobField Image to keep the same ratio of its original width and height to keep it from being stretched out of proportion.
Option Explicit
' ***** Modular Declarations
Private WithEvents m_rptSection As CRAXDRT.Section
' ***** End Modular Declarations
Private Sub m_rptSection_Format(ByVal pFormattingInfo As Object)
Dim rptReportObjects As CRAXDRT.ReportObjects
Dim rptBlobField As CRAXDRT.BlobFieldObject
Dim rptPicObj As CRAXDRT.OLEObject
Dim Index As Integer
Dim sngImgWidthRatio As Single
Dim sngImgHeightRatio As Single
Dim sngWidthRatio As Single
Dim sngHeightRatio As Single
Dim sngImgWidth As Single
Dim sngImgHeight As Single
Dim sngWidth As Single
Dim sngHeight As Single
Set rptReportObjects = m_rptSection.ReportObjects
For Index = 1 To rptReportObjects.Count
If rptReportObjects(Index).Kind = crBlobFieldObject Then
Set rptBlobField = rptReportObjects(Index)
' have to convert the Image from vbHimetric to vbTwips...
' so that we can get our calculations correct...
sngImgWidth = frmPicture.ScaleX(frmPicture.picImage.Picture.Width, vbHimetric, vbTwips)
sngImgHeigt = frmPicture.ScaleY(frmPicture.picImage.Picture.Height, vbHimetric, vbTwips)
sngWidth = rptBlobField.Width
sngHeight = rptBlobField.Height
' setting 2 variables here as the Ratio of how many vbTwips...
' the Width/Height has compared to the other basically...
' telling us for every Twip in Width/Height it takes this many Width/Height vbTwips to match...
sngImgWidthRatio = sngImgWidth / sngImgHeight
sngImgHeightRatio = sngImgHeight / sngImgWidth
' calculating the Image to BlobField Ratio's, same as above...
sngWidthRatio = sngWidth / sngImgWidth
sngHeightRatio = sngHeight / sngImgHeight
' checking the Ratio to see which calculation to use...
' this will stretch an image as well as shrink it...
' could rework this to not do so to a certain extent...
If sngWidthRatio < sngHeightRatio Then
rptBlobField.Width = (sngWidthRatio * sngImgWidth)
rptBlobField.Height = (sngImgHeightRatio * sngWidth)
' making sure the Horizontal and Veticle stays the same as well...
rptBlobField.Left = rptBlobField.Left + ((sngWidth - rptBlobField.Width) / 2)
rptBlobField.Top = rptBlobField.Top + ((sngHeight - rptBlobField.Height) / 2)
Else
rptBlobField.Width = (sngImgWidthRatio * sngHeight)
rptBlobField.Height = (sngHeightRatio * sngImgHeight)
' making sure the Horizontal and Veticle stays the same as well...
rptBlobField.Left = rptBlobField.Left + ((sngWidth - rptBlobField.Width) / 2)
rptBlobField.Top = rptBlobField.Top + ((sngHeight - rptBlobField.Height) / 2)
End If
End If
Next
End Sub