Ask писал(а): параметр что ли добавить в PaintToCanvas...
Думаю любой вариант сойдет.
Но один в один вывод на принтер маловероятен, фон там поменять, размер заголовка. Сейчас через временный чарт делал, глупо.
Может некое свойство добавить в котором можно задать наиболее вероятные изменяемые свойства при печати?
Тогда задали их (Chart.PrintParam.zoom:=2.55, Chart.PrintParam.BackgroundColor:=clwhite, Chart.PrintParam.TitleFontSize:=14pt) и при печати указали использование этих значений при отрисовке (Chart.PaintToCanvas(Printer.Canva, true)), где true - флаг.
Добавлено спустя 30 минут 57 секунд:Ask писал(а):Это уже есть, см. axisdemo. Только набор "круглых" значений жёстко зашит, надо бы его сделать управляемым.
Если честно, не разобрался как управляться этим. Понял, что визуально можно любой нужный сформировать. Но вот как? Методом тыка что-то не очень в голове технология создается. Где-то можно почитать описание пользователя, delphi?
У себя было так: задал максимум и минимум для обоих осей, а при отрисовке чарт подобрал шаг и поменял при необходимости максимумы. А у серий был параметр, на левой или правой рисоваться. Было понятно, но не универсально)
А вот такую штуку можно сделать, без ручного пересчета параметров осей при каждом событии масштаба?
Масштабирование работает не по отношению ко всем осям. Т.е. две оси, два графика (или 4 оси, если по X тоже не нужно), детализируем кусок первого графика, масштаб меняется, но только по отношению первой оси, вторая ось как отображалась на экране на всю высоту чарта от 0 до 10, так и отображается.