Шпаргалка по ZedGraph. Как зафиксировать размер шрифтов | jenyay.net

Шпаргалка по ZedGraph. Как зафиксировать размер шрифтов

Этот пример родился благодаря комментарию Андрея к записи Как менять размеры шрифтов у различных элементов графика. В комментариях были вопросы про то, как избавиться от масштабирования шрифтов при измемении размера компонента ZedGraph. Оказалось, что для этого достаточно установить в false всего одно свойство - IsFontScaled, которое относится к классу GraphPane.

На следующих скриншотах показан результат работы этого свойства.

Исходный размер:

Окно после изменения размера. Обратите внимание на шрифты

Все примеры объединены в одном solution для Visual Studio 2005 и написаны на языке C#, скачать их можно отсюда.

Проект в примере - FontScaled

public partial class Form1 : Form
{
    public Form1 ()
    {
        InitializeComponent ();

        DrawGraph ();
    }


    private double f (double x)
    {
        if (x == 0)
        {
            return 1;
        }

        return Math.Sin (x) / x;
    }


    private void DrawGraph ()
    {
        // Получим панель для рисования
        GraphPane pane = zedGraph.GraphPane;

        // !!! С помощью этого свойства указываем, что шрифты не надо масштабировать
        // при изменении размера компонента.
        pane.IsFontsScaled = false;

        // Очистим список кривых на тот случай, если до этого сигналы уже были нарисованы
        pane.CurveList.Clear ();

        // Создадим список точек
        PointPairList list = new PointPairList ();

        double xmin = -50;
        double xmax = 50;

        // Заполняем список точек
        for (double x = xmin; x <= xmax; x += 0.01)
        {
            list.Add (x, f (x));
        }

        // Создадим кривую с названием "Sinc"
        LineItem myCurve = pane.AddCurve ("Sinc", list, Color.Blue, SymbolType.None);

        // Вызываем метод AxisChange (), чтобы обновить данные об осях.
        zedGraph.AxisChange ();

        // Обновляем график
        zedGraph.Invalidate ();
    }

}

Вернуться к остальным примерам

Вы можете подписаться на новости сайта через RSS, Группу Вконтакте или Канал в Telegram.
0 stars Пока еще нет оценок




Подписаться на комментарии
Автор:
Тема:
 Ваш комментарий
 
 
Введите код 966