توثيق HotXLS

فئة TXLSXChartLayout

TXLSXChartLayout يخزن تخطيطاً يدوياً حافظاً للحقول لمناطق الرسم وعناوين المخطط أو المحاور ووسائل الإيضاح

الإعلان

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;

نموذج الإحداثيات

تُطبَّع X وY وWidth وHeight مقابل مستطيل المخطط. إحداثيا الحافة X وY هما اليسار والأعلى، وعرض الحافة وارتفاعها هما اليمين والأسفل، وعاملا X وY يزيحان الموضع التلقائي، وعرض المعامل وارتفاعه حجمان نسبيان للمخطط
يحتفظ النموذج بكل حقل ووضع باستقلالية. تظل العناصر المحذوفة في الملف المحمَّل محذوفة، وتنجو القيم الرقمية غير الصالحة من عملية حفظ دون تغيير، بينما يرجع العرض إلى الهندسة التلقائية
قد تحتوي تخطيطات العناوين على X وY وحدهما مع الاحتفاظ بالحجم المقاس تلقائياً، بينما تتطلب تخطيطات منطقة الرسم ووسيلة الإيضاح الإحداثيات الأربعة كلها
يضبط SetPositionAndSize القيم الأربع دفعة واحدة، ويعلّم أنماطها موجودة، ويمكّن التخطيط في استدعاء واحد. وأوامر ضبط الإحداثيات الفردية تمكّن التخطيط أيضاً

الأنماط والهدف

xlsxChartLayoutEdgeالموضع من حافة المخطط، ويستخدم افتراضياً لـ X وY
xlsxChartLayoutFactorمعامل الحجم أو الإزاحة، ويستخدم افتراضياً للعرض والارتفاع
Targetالمستطيل الداخلي أو الخارجي لمنطقة الرسم، وذو معنى فقط لـ PlotAreaLayout

الحل والتحويل

يحلّ TXLSXChartLayoutResolver مستطيلات العنوان ووسيلة الإيضاح ومنطقة الرسم الداخلية والخارجية وعناوين المحاور مرة واحدة لترقيم الصفحات ومخرجات SVG وPDF والصور والمعاينة والطباعة والعارض وHTML. الهندسة غير الصالحة أو غير المكتملة تحتفظ بالمستطيل التلقائي، بينما ينتقل المستطيل الصالح الخارج عن الحدود إلى أقرب موضع داخل المخطط دون تغيير الحجم
يحوِّل تحويل ODF الهندسة المحلولة إلى مسافات مطلقة بالمخطط. يستخدم العنوان ووسيلة الإيضاح ‏svg:x وsvg:y، بينما تستخدم منطقة الرسم أيضاً svg:width وsvg:height. وتُغفل وسيلة الإيضاح اليدوية في ODF للخاصية chart:legend-position لأن تلك الخاصية تتجاوز الإحداثيات المطلقة

مثال

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);

انظر أيضاً