TXLSXChartLayout stores a complete normalized manual layout for plot areas, chart or axis titles and legends
Declaration
type
TXLSXChartLayoutTarget = (xlsxChartLayoutOuter, xlsxChartLayoutInner);
TXLSXChartLayoutMode = (xlsxChartLayoutFactor, xlsxChartLayoutEdge);
TXLSXChartLayout = class
property Enabled: Boolean;
property HasTarget: Boolean;
property HasXMode, HasYMode, HasWidthMode, HasHeightMode: Boolean;
property HasX, HasY, HasWidth, HasHeight: Boolean;
property Target: TXLSXChartLayoutTarget;
property XMode, YMode, WidthMode, HeightMode: TXLSXChartLayoutMode;
property X, Y, Width, Height: Double;
procedure ClearTarget;
procedure ClearXMode;
procedure ClearYMode;
procedure ClearWidthMode;
procedure ClearHeightMode;
procedure ClearX;
procedure ClearY;
procedure ClearWidth;
procedure ClearHeight;
procedure SetPositionAndSize(AX, AY, AWidth, AHeight: Double);
procedure Assign(Source: TXLSXChartLayout);
procedure Clear;
end;
Coordinate model
X, Y, Width and Height are normalized against the chart rectangle Width and height are constrained to 0 through 1, while factor-based X and Y may use -1 through 1
Modellen beholder hvert felt og hver modus uavhengig. Det som var utelatt ved innlesing, forblir utelatt, og ugyldige talltoken overlever en uendret lagring, mens renderingen faller tilbake til automatisk geometri
Tittellayouts kan inneholde bare X og Y og beholder den automatisk målte størrelsen. Layout for plottområde og tegnforklaring krever alle fire koordinater
SetPositionAndSize assigns all four values and enables the layout in one call This satisfies Excel's requirement that manual coordinates be emitted as a complete group
Modes and target
| xlsxChartLayoutEdge | Position from the chart edge, used by default for X and Y |
| xlsxChartLayoutFactor | Size or offset factor, used by default for width and height |
| Target | Inner or outer plot rectangle and meaningful only for PlotAreaLayout |
Oppløsning og konvertering
TXLSXChartLayoutResolver finner tittel-, tegnforklarings-, indre og ytre plottområdes- og aksentitelrektangler én gang for paginering, SVG, PDF, bilde, forhåndsvisning, utskrift, viewer og HTML-utdata. Ugyldig eller ufullstendig geometri beholder det automatiske rektangelet, mens et gyldig rektangel utenfor diagrammet flyttes til nærmeste posisjon i diagrammet uten å endre størrelsen
ODF-konvertering kartlegger oppløst geometri til absolutte diagramavstander. Tittel og tegnforklaring bruker svg:x og svg:y, mens plottområdet også bruker svg:width og svg:height. En manuell ODF-tegnforklaring utelater chart:legend-position fordi attributten overstyrer absolutte koordinater
Example
Chart.PlotAreaLayout.Target := xlsxChartLayoutInner;
Chart.PlotAreaLayout.SetPositionAndSize(0.12, 0.18, 0.72, 0.64);
Chart.TitleLayout.SetPositionAndSize(0.1, 0.02, 0.6, 0.12);
Chart.LegendLayout.SetPositionAndSize(0.2, 0.84, 0.6, 0.1);
See also