public void AddImage(string fileName, float x, float y, float width, float height) { PdfFont font = new PdfFont(ObjectNumber, "Times-Roman"); PdfObjects.Add(font); ObjectNumber++; // TODO: add image support PdfImage image = new PdfImage(ObjectNumber, fileName, width, height); PdfObjects.Add(image); ObjectNumber++; PdfObject procSet = new PdfObject(ObjectNumber); procSet.Dictionary.Add("ProcSet", $"[/PDF /Text /ImageB /ImageC /ImageI]"); procSet.Dictionary.Add("Font", $"<< {font.Name} {font.PdfReference()} >>"); procSet.Dictionary.Add("XObject", $"<< {image.Name} {image.PdfReference()} >>"); PdfObjects.Add(procSet); ObjectNumber++; PdfImageTransform pdfImageTransform = new PdfImageTransform(ObjectNumber, fileName, image.Name, x, y, width, height, CurrentPage.MediaBox); PdfObjects.Add(pdfImageTransform); ObjectNumber++; CurrentPage.AddResources(procSet); CurrentPage.AddContent(pdfImageTransform); }
public void AddText(string text, int x, int y) { PdfFont font = new PdfFont(ObjectNumber, "Times-Roman"); PdfObjects.Add(font); ObjectNumber++; PdfObject procSet = new PdfObject(ObjectNumber); procSet.Dictionary.Add("ProcSet", $"[/PDF /Text]"); procSet.Dictionary.Add("Font", $"<< {font.Name} {font.PdfReference()} >>"); PdfObjects.Add(procSet); ObjectNumber++; PdfText textObj = new PdfText(ObjectNumber, text, x, y, CurrentPage.MediaBox); CurrentPage.AddContent(textObj); PdfObjects.Add(textObj); ObjectNumber++; }