HotXLS Docs

TXLSXChartLayout class

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;

Koordinátamodell

Az X, Y, Width és Height értékek a diagram téglalapjához vannak normalizálva. Az él (Edge) X és Y a bal felső koordináta, az él szélesség és magasság a jobb alsó koordináta, a faktor X és Y az automatikus pozíciót tolja el, a faktor szélesség és magasság pedig diagramhoz viszonyított méret
A modell minden mezőt és módot önállóan őriz meg. A betöltéskor elhagyott értékek elhagyva maradnak, az érvénytelen numerikus tokenek változatlan mentésben túlélik a mentést, miközben a megjelenítés automatikus geometriára vált vissza
A cím-elrendezések tartalmazhatják csak az X és Y értékeket, és megtartják az automatikusan mért méretet. A diagramterület- és jelmagyarázat-elrendezések mind a négy koordinátát igénylik
A SetPositionAndSize egyetlen hívásban adja meg mind a négy értéket, jelennek meg a módozataik, és engedélyezi az elrendezést. Az egyedi koordináta-beállítók szintén engedélyezik az elrendezést

Modes and target

xlsxChartLayoutEdgePosition from the chart edge, used by default for X and Y
xlsxChartLayoutFactorSize or offset factor, used by default for width and height
TargetInner or outer plot rectangle and meaningful only for PlotAreaLayout

Feloldás és konverzió

A TXLSXChartLayoutResolver a cím, a jelmagyarázat, a belső és külső diagramterület, valamint a tengelycímek téglalapjait egyszer oldja fel a lapozás, SVG, PDF, kép, előnézet, nyomtatás, megjelenítő és HTML kimenethez. Az érvénytelen vagy hiányos geometria megtartja az automatikus téglalapot, míg az érvényes, de tartományon kívüli téglalap a diagramon belüli legközelebbi pozícióra kerül méretének változtatása nélkül
Az ODF konverzió a feloldott geometriát abszolút diagramtávolságokra képezi le. A cím és a jelmagyarázat az svg:x és svg:y, a diagramterület pedig az svg:width és svg:height értékeket is használja. A kézi ODF jelmagyarázat elhagyja a chart:legend-position attribútumot, mert az felülbírálná az abszolút koordinátákat

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