Нативні векторні діаграми

THPDFChart поєднує серії даних, осі, теми, легенди, підписи та текст доступності в перевикористовувану модель діаграми, яку відмальовує THPDFPage.DrawChart

Рендерер випромінює оператори шляхів і тексту PDF безпосередньо, тому діаграми залишаються різкими на будь-якому рівні масштабу та не створюють об'єктів зображень Image XObject

Модель діаграми

THPDFChart володіє своїми екземплярами THPDFChartSeries та двома об'єктами THPDFChartAxis, а кожна серія зростає геометрично у сховищі точок, що дає амортизоване додавання за сталий час

Викличте THPDFChart.AddSeries зі значенням THPDFChartKind, після чого додайте скінченні координати через THPDFChartSeries.AddPoint

THPDFChart.ClearSeries звільняє всі належні серії, тоді як THPDFChartSeries.Clear зберігає конфігурацію серії та видаляє лише її точки

Властивості SeriesCount, Series, Count та Points надають індексований доступ до моделі лише для читання

Серії та осі

Лінійні, стовпчасті, обласні та точкові серії можуть ділити одну декартову графічну область, тоді як кругова діаграма мусить містити рівно одну серію hckPie

THPDFChartAxis.AutomaticMinimum та AutomaticMaximum обирають межі, що визначаються даними; вимкнення будь-якої властивості активує відповідне значення Minimum або Maximum

TickCount затискається від 2 до 20 під час рендерингу, ShowGrid керує лініями сітки осей, а NumberFormat надає числовий формат для поділок і згенерованих підписів

Зовнішній вигляд і підписи

THPDFChartTheme обирає палітри hctLight, hctDark або hctMonochrome

THPDFChartLegendPosition обирає без легенди, праву легенду або нижню легенду через hclNone, hclRight та hclBottom

Кожна серія надає Name, Kind, Color, LineWidth, ShowMarkers, ShowLabels та позначені дані THPDFChartPoint

Встановіть Color у реальне TColor для явного кольору серії або залиште значення за замовчуванням, щоб використати активну палітру

Доступність

THPDFChart.BuildAccessibleText повертає явний AlternativeText, коли він наявний, або будує обмежену підсумкову інформацію заголовка, серій, підписів, X та Y з незалежними межами для точок і байтів

Передайте батька структури в розширене перевантаження DrawChart, щоб обгорнути всю діаграму в позначену фігуру Figure із записом Alt та розгорткою меж компонування

Батько структури зазвичай має бути елементом компонування Document, Sect або таким, що містить фігуру, створеним для поточної сторінки

Бюджети та статистика

THPDFChartRenderOptions.Default дозволяє 64 серії, 100 000 точок на серію, 1 000 000 сумарних точок, 512 видимих підписів, 64 точки у згенерованому тексті доступності та 8 192 байти доступності

Недійсна геометрія, нескінченні координати, змішаний вміст круга та перевищення бюджетів серій чи точок кидають виняток до початку малювання

THPDFChartRenderStatistics звітує відмальовані серії, точки, підписи, сегменти шляхів, тегування фігур та обрізання підписів

Перевірка та рендеринг лінійні за кількістю серій і точок, з обмеженою роботою над підписами та доступністю

Типи підтримки

Публічна поверхня охоплює THPDFChartKind, THPDFChartTheme, THPDFChartLegendPosition, THPDFChartPoint, THPDFChartSeries, THPDFChartAxis, THPDFChart, THPDFChartRenderOptions та THPDFChartRenderStatistics

Приклад

Chart := THPDFChart.Create;
try
  Chart.Title := 'Quarterly revenue';
  Chart.XAxis.Title := 'Quarter';
  Chart.YAxis.Title := 'Revenue';
  Chart.Theme := hctLight;

  SeriesItem := Chart.AddSeries(hckBar, 'North');
  SeriesItem.ShowLabels := True;
  SeriesItem.AddPoint(1, 120, 'Q1');
  SeriesItem.AddPoint(2, 175, 'Q2');
  SeriesItem.AddPoint(3, 164, 'Q3');

  Options := THPDFChartRenderOptions.Default;
  Document.CurrentPage.DrawChart(
    Chart, 48, 72, 500, 320, Options, Statistics
  );
finally
  Chart.Free;
end;

Дивіться також: THPDFPage.DrawChart, Огляд векторної графіки, Автоматична структура PDF/UA