Draw Lists
Draws formatted text with ordered and unordered lists.
Сode Snippet
using (var bitmap = new Bitmap(600, 600, PixelFormat.Format24bppRgb, RgbColor.White))
using (var graphics = bitmap.GetAdvancedGraphics())
{
// Ordered list (number)
{
var dummyText =
@"<ol>" + // <ol style='type:numbers;'>
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(20f, 20f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Ordered list (lowercase letters)
{
var dummyText =
@"<ol style='type:lowerLetter;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(220f, 20f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Ordered list (uppercase letter)
{
var dummyText =
@"<ol style='type:upperLetter;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(420f, 20f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Ordered list (lowercase roman numerals)
{
var dummyText =
@"<ol style='type:lowerRoman;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(20f, 220f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Ordered list (uppercase roman numerals)
{
var dummyText =
@"<ol style='type:upperRoman;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(220f, 220f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Ordered list (start from 10)
{
var dummyText =
@"<ol style='start:10;'>" +
@"<li>Tenth</li>" +
@"<li>Eleventh</li>" +
@"<li>Twelfth</li>" +
@"<li>Thirteenth</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Verdana", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(420f, 220f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Unordered list (circle)
{
var dummyText =
@"<ul style='type: #9675;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ul>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Arial", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(20f, 420f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Unordered list (square)
{
var dummyText =
@"<ul style='type: #9632;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ul>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Arial", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(220f, 420f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
// Nested lists
{
var dummyText =
@"<ol>" +
@"<li>First" +
@"<ul style='type: #9679;'>" +
@"<li>First</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"<li>Fourth</li>" +
@"</ul>" +
@"</li>" +
@"<li>Second</li>" +
@"<li>Third</li>" +
@"</ol>";
var boundedText = new BoundedText(dummyText, graphics.CreateFont("Arial", 18f), new SolidBrush(RgbColor.Black))
{
Rectangle = new System.Drawing.RectangleF(420f, 420f, 160f, 160f),
};
graphics.DrawText(boundedText);
graphics.DrawRectangle(new Pen(RgbColor.Red), boundedText.Rectangle);
}
bitmap.Save("DrawLists.png");
Output
DrawLists.png
For AI-assisted development: Download Graphics Mill Code Samples XML Catalog