I am having real problems, I have a cell with a phrase, and I want a small icon to the left of the phrase, but each element is being rendered on a new line
here is my code that returns the cell:
var cell = new PdfPCell();
Bitmap bitmap = new Bitmap(21, 21);
Graphics g = Graphics.FromImage(bitmap);
g.Clear(Color.White);
SolidBrush brush = new SolidBrush(colour);
g.FillEllipse(brush, 0, 0, 20, 20);
brush.Dispose();
g.DrawImageUnscaled(bitmap, 0, 0);
g.Dispose();
var imgIcon = iTextSharp.text.Image.GetInstance(bitmap, System.Drawing.Imaging.ImageFormat.Jpeg);
bitmap.Dispose();
//imgIcon.Alignment = iTextSharp.text.Image.TEXTWRAP | iTextSharp.text.Image.ALIGN_RIGHT;
cell.AddElement(imgIcon);
var phrase = new Phrase(o.ToString(), Report.Fonts.Table);
cell.AddElement(phrase);
//this code scales the image so that it does not fit the cell
foreach (IElement element in cell.CompositeElements)
{
PdfPTable tblImg = element as PdfPTable;
if (tblImg != null)
{
tblImg.TotalWidth = 10;
tblImg.LockedWidth = true;
}
}
return cell;
here is the output:

any help would be greatly appreciated
–edit:
here is the output with imgIcon’s alignment property set

The iTextSharp
Imageobject is displayed as a block element (in CSS terms). You need to explicitly wrap theImagein aChunkto get inline display, something like this:Code snippet result: