Шаблоны букв алфавита в png - C#
Формулировка задачи:
Всем привет. Имеется достаточно интересная задача. Для распознавания текста с картинки есть необходимость создать png файлики с шаблонами букв разного шрифта и размера ланинского алфавита:
А именно при нажатии на кнопку чтобы создаваласть папка скажем Arial_18 (Шрифт_размер) с 2 подпапками для маленьких и заглавных букв лат. алфавита с рисунками букв обрезанных по краям самих букв(по контуру).
Нет опыта работы с рисунками, к сожалению, поэтому прошу совета с какой стороны подступиться. Рисуночек буквы прилагается
pic
Буква должна быть порезана по красному контуру, то есть по краям
Решение задачи: «Шаблоны букв алфавита в png»
textual
Листинг программы
private void btnGenerate_Click(object sender, RoutedEventArgs e) { gv_font = myfont.ToString(); gv_size = int.Parse(mysize.Text); gv_directory = gv_font + "_" + gv_size; for (int i=0; i<= upper_abc.Length-1;i++) { gv_symbol = upper_abc[i].ToString(); System.Drawing.Image bmp = new Bitmap(100, 100); Graphics g = Graphics.FromImage(bmp); int size = gv_size; Font myFont = new Font(gv_font, size); SizeF sized = g.MeasureString(gv_symbol.ToString(), myFont); PointF rect = new PointF(sized.Width, sized.Height); g.TextRenderingHint = System.Drawing.Text.TextRenderingHint.AntiAlias; g.InterpolationMode = InterpolationMode.HighQualityBicubic; g.PixelOffsetMode = PixelOffsetMode.HighQuality; g.Flush(); g.Clear(System.Drawing.Color.Transparent); g.DrawString(gv_symbol, myFont, new SolidBrush(System.Drawing.Color.Black), rect); var currentDirectory = System.IO.Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + "/" + gv_directory + "/Upper/" ; bool exists = System.IO.Directory.Exists(System.IO.Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + "/" + gv_directory + "/Upper/"); if (!exists) System.IO.Directory.CreateDirectory(System.IO.Path.GetDirectoryName(Assembly.GetEntryAssembly().Location) + "/" + gv_directory + "/Upper/"); string fileName = currentDirectory + gv_symbol + ".png"; bmp.Save(fileName, ImageFormat.Png); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д