Напишите на этикетке текст с такими коэффициентами, как C₁, C₂, C₃ - PullRequest
3 голосов
/ 07 марта 2011

Я должен написать текст со значением коэффициента, как C 1 , C 2 , C 3 на тексте метки, поэтому, пожалуйста, скажите, как я могу написать???

спасибо Шаши Джайсвал

Ответы [ 4 ]

7 голосов
/ 07 марта 2011

Вам необходим шрифт с глифами для кодовых точек Unicode U + 2080 до U + 2089 :

label1.Font = new Font("DejaVu Sans", 10);
label1.Text = "C₁";  // or "C\u2081"

(при условии WinForms)

3 голосов
/ 07 марта 2011

В WinForms вам нужно эмулировать это с RichTextBox

// Appearance as a label
var subscriptFont = new System.Drawing.Font(
                        richTextBox1.Font.FontFamily, 
                        richTextBox1.Font.Size - 2);
richTextBox1.BackColor = System.Drawing.SystemColors.Control;
richTextBox1.BorderStyle = System.Windows.Forms.BorderStyle.None;
richTextBox1.ReadOnly = true;
richTextBox1.Text = "C1, C2, C3";
// subscript 1
richTextBox1.Select(1, 1);
richTextBox1.SelectionCharOffset = -3;
richTextBox1.SelectionFont = subscriptFont;
// subscript 2
richTextBox1.Select(5, 1);
richTextBox1.SelectionCharOffset = -3;
richTextBox1.SelectionFont =subscriptFont;
// subscript 3
richTextBox1.Select(9, 1);
richTextBox1.SelectionCharOffset = -3;
richTextBox1.SelectionFont = subscriptFont;
subscriptFont.Dispose();
1 голос
/ 07 марта 2011

Вы можете попробовать использовать другой шрифт с субиндексами ...

0 голосов
/ 07 марта 2011

Вы не можете. Просто и понятно.

(Но вы можете использовать две метки, соответственно позиционированные и измеренные, или использовать метку, которая поддерживает сложную разметку ... Или использовать UTF-8, которая позволяет им ...)

А вот стандартный C # Winforms проект? Нах.

...