Нативні векторні діаграми
THPDFChart поєднує серії даних, осі, теми, легенди, підписи та текст доступності в перевикористовувану модель діаграми, яку відмальовує THPDFPage.DrawChart
Рендерер випромінює оператори шляхів і тексту PDF безпосередньо, тому діаграми залишаються різкими на будь-якому рівні масштабу та не створюють об'єктів зображень Image XObject
Модель діаграми
THPDFChart володіє своїми екземплярами THPDFChartSeries та двома об'єктами THPDFChartAxis, а кожна серія зростає геометрично у сховищі точок, що дає амортизоване додавання за сталий час
Викличте THPDFChart.AddSeries зі значенням THPDFChartKind, після чого додайте скінченні координати через THPDFChartSeries.AddPoint
THPDFChart.ClearSeries звільняє всі належні серії, тоді як THPDFChartSeries.Clear зберігає конфігурацію серії та видаляє лише її точки
Властивості SeriesCount, Series, Count та Points надають індексований доступ до моделі лише для читання
Серії та осі
hckLineмалює з'єднані шляхи з необов'язковими векторними маркерами та підписами точокhckBarмалює згруповані стовпці навколо кожної числової координати X і включає нуль в автоматичні межі по YhckAreaзамикає кожну серію проти видимої нульової базової лінії та використовує заливку, змішану з урахуванням темиhckPieмалює одну серію з додатними значеннями як окремо забарвлені векторні секториhckScatterмалює незалежні векторні маркери в числових координатах
Лінійні, стовпчасті, обласні та точкові серії можуть ділити одну декартову графічну область, тоді як кругова діаграма мусить містити рівно одну серію 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