private static Font GetFontForStringAndRegion(string value, TemplateRegion region, Graphics g) { int fontPoint = 20; while (true) { FontStyle fontStyle = FontStyle.Regular; if (region.Bold) { fontStyle = FontStyle.Bold | fontStyle; } if (region.Italic) { fontStyle = FontStyle.Italic | fontStyle; } Font testFont = new Font("Arial", 14, fontStyle); SizeF size = g.MeasureString(value, testFont, region.Region.Width); if (size.Height > region.Region.Height) { fontPoint -= 2; if (fontPoint == 0) { return testFont; } } else { return testFont; } } }
void templateRegionSelector_OnRegionChange(object sender, TemplateRegion e) { SetCurrentRegion(e); }
private void SetCurrentRegion(TemplateRegion region) { this.templateRegionSelector.CurrentRegion = region; this.CurrentRegion = region; chkBold.Checked = region.Bold; chkInvert.Checked = region.Invert; chkItalic.Checked = region.Italic; chkCenter.Checked = region.Center; cboRegion.SelectedItem = region.RegionName; }