Member 13581346 Ответов: 1

Drawcheckbox в printdocument C#


привет всем, кто мне нужен, чтобы нарисовать флажок при печати документа есть какие-нибудь идеи??
спасибо...

Что я уже пробовал:

Графика gg;

пробовать
{
гг.Шнурок(chk_acc.Текст, chk_acc.Шрифт, новый SolidBrush(chk_acc.Свойство forecolor), chk_acc.Правой chk_acc.Высота - гг.MeasureString(chk_acc.Текст, chk_acc.Шрифт).Ширина, chk_acc.Top, новый формат строки());
Контрольная краска.DrawCheckBox(gg, 250, 250, 25, 25, ButtonState.Проверен);

}
поймать(исключение бывший)
{
Ящик для сообщений.Показать(напр.сообщение);
}

[no name]

Вы серьезно считаете, что вам нужно нарисовать флажок или добавить/добавить флажок к документу во время печати для него из вашего приложения?

Maciej Los

Есть обходной путь...
Воспользуйся Wingdings шрифт и передача символов Юникода: U+1F5F9. Видеть: Набор символов Wingdings и эквивалентные символы Unicode[^]

1 Ответов

Рейтинг:
2

thexstar

попробуйте использовать специальные символы utf-8 и нарисовать их вместе с вашим текстом..

string boxChecked = "☑"; // utf-8 special character
               string boxnonChecked = "☐";
               FontFamily family = new FontFamily("Microsoft Sans Serif");//change the text size by font size
               Font font = new System.Drawing.Font(family, 9, FontStyle.Bold);//ch
               Point DrawLocation = new Point(5, 5); // point of text location
               string DrawText = "the text you want to draw it..";
               gg.DrawString(DrawText, font, new SolidBrush(Color.Red), DrawLocation);


а если вы хотите гладкий текст дайте попробовать GraphicsPath , и обновите это Графические Свойства
gg.InterpolationMode = InterpolationMode.HighQualityBicubic;
gg.CompositingQuality = CompositingQuality.HighQuality;
gg.PixelOffsetMode = PixelOffsetMode.HighQuality;
gg.SmoothingMode = SmoothingMode.HighQuality;
using (GraphicsPath gp = new GraphicsPath())
   {
          string boxChecked = "☑"; // utf-8 special character
          string boxnonChecked = "☐";
          FontFamily family = new FontFamily("Microsoft Sans Serif");//change the text size by font size
          Font font = new System.Drawing.Font(family, 9, FontStyle.Bold);//ch
          Point DrawLocation = new Point(5, 5); // point of text location
          string DrawText = "the text you want to draw it..";
          gp.AddString(DrawText, font.FontFamily,(int)font.Style,font.Size,DrawLocation, StringFormat.GenericDefault);
   }
gg.DrawPath(penDefault, gp);

удачи.