I have attached a PDF with some samples of how it works well with Circles, but not with Ellipses. My issue is that we are making a report card where instructors can mark items the student has accomplished. Visually we want the item to be circled (or in the case of wider items ellipsed).
The red circle is working perfectly to circle the Z.
The orange circle is too tall when circling the word Orange, so we need an ellipse instead.
The blue ellipse would fit nicely if I could tweak the position to align it correctly. This is where I believe there is a bug in the Aspose engine.
I have also included the code to create the pdf so you can see the objects I’m using.
Aspose.Pdf.Document pdf = new Aspose.Pdf.Document();
Aspose.Pdf.Page curPage = pdf.Pages.Add();
Aspose.Pdf.Table table = new Aspose.Pdf.Table();
table.Margin = new Aspose.Pdf.MarginInfo(100f, 20f, 20f, 100f);
curPage.Paragraphs.Add(table);
Aspose.Pdf.Row row = table.Rows.Add();
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“A”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“B”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“C”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“D”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“E”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“F”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“G”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“H”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“I”));
row = table.Rows.Add();
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“J”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“K”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“L”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“M”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“N”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“O”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“P”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“Q”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“R”));
row = table.Rows.Add();
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“S”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“T”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“U”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“V”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“W”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“X”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“Y”));
Aspose.Pdf.Cell cell = row.Cells.Add();
Aspose.Pdf.Drawing.Graph graph = new Aspose.Pdf.Drawing.Graph(0, 0);
Aspose.Pdf.Drawing.Circle circle = new Aspose.Pdf.Drawing.Circle(0, 0, 6f);
circle.GraphInfo.Color = Aspose.Pdf.Color.Red;
circle.PosX = 3f;
circle.PosY = -5f;
graph.Shapes.Add(circle);
cell.Paragraphs.Add(graph);
cell.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“Z”));
table = new Aspose.Pdf.Table();
table.Margin = new Aspose.Pdf.MarginInfo(100f, 20f, 20f, 100f);
table.DefaultCellPadding = new Aspose.Pdf.MarginInfo(10, 10, 10, 10);
curPage.Paragraphs.Add(table);
row = table.Rows.Add();
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“GREEN”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“YELLOW”));
cell = row.Cells.Add();
graph = new Aspose.Pdf.Drawing.Graph(0, 0);
Aspose.Pdf.Drawing.Ellipse ellipse = new Aspose.Pdf.Drawing.Ellipse(0, 0, 40f, 20f);
ellipse.GraphInfo.Color = Aspose.Pdf.Color.Blue;
ellipse.Bottom = -40f; //THIS VALUE IS IGNORED
graph.Shapes.Add(ellipse);
cell.Paragraphs.Add(graph);
cell.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“BLUE”));
row = table.Rows.Add();
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“PURPLE”));
row.Cells.Add().Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“RED”));
cell = row.Cells.Add();
graph = new Aspose.Pdf.Drawing.Graph(0, 0);
circle = new Aspose.Pdf.Drawing.Circle(0, 0, 30f);
circle.GraphInfo.Color = Aspose.Pdf.Color.Orange;
circle.PosX = 20f;
circle.PosY = -5f;
graph.Shapes.Add(circle);
cell.Paragraphs.Add(graph);
cell.Paragraphs.Add(new Aspose.Pdf.Text.TextFragment(“ORANGE”));