private Rectangle GetContainerFor(string tag, Font font, int padding, RectangleLayouter layouter) { var size = TextRenderer.MeasureText(tag, font) + new Size(padding, padding); return(layouter.PutNextRectangle(size)); }
private void DrawTags( IEnumerable <string> tags, Graphics graphics, Point imageCenter, TagsCloudSettings settings) { var font = settings.Font; var layouter = new RectangleLayouter(imageCenter, settings.LayoutTrack); foreach (var tag in tags) { var container = GetContainerFor(tag, font, settings.TagContainerPadding, layouter); DrawString(tag, font, graphics, settings.TextColor, container); if (font.Size >= 9) { font = new Font(font.FontFamily, font.Size - 2); } } }