سفارشی‌سازی نواحی نمودارهای ارائه در C++

Overview

این مقاله نشان می‌دهد چگونه با ناحیه‌ نمودار (Plot Area) در Aspose.Slides کار کنید. توضیح می‌دهد چگونه موقعیت و اندازه واقعی ناحیه‌ نمودار را با اعتبارسنجی چیدمان نمودار و سپس خواندن مقادیر X، Y، عرض و ارتفاع به دست آورید.

همچنین نشان می‌دهد چگونه حالت چیدمان ناحیه‌ نمودار را هنگام تنظیم دستی چیدمان، با استفاده از LayoutTargetType برای تعیین اینکه آیا ناحیه‌ نمودار بر اساس ناحیه داخلی یا ناحیه خارجی همراه با محورها و برچسب‌های محورها محاسبه شود، پیکربندی کنید.

Get Width and Height of a Chart Plot Area

Aspose.Slides برای C++ یک API ساده فراهم می‌کند برای .

  1. یک نمونه از کلاس Presentation ایجاد کنید.
  2. به اولین اسلاید دسترسی پیدا کنید.
  3. نمودار با داده‌های پیش‌فرض اضافه کنید.
  4. قبل از دریافت مقادیر واقعی، متد IChart::ValidateChartLayout() را صدا بزنید.
  5. موقعیت X واقعی (چپ) عنصر نمودار نسبت به گوشهٔ بالا‑چپ نمودار را دریافت می‌کند.
  6. موقعیت Y واقعی عنصر نمودار نسبت به گوشهٔ بالا‑چپ نمودار را دریافت می‌کند.
  7. عرض واقعی عنصر نمودار را دریافت می‌کند.
  8. ارتفاع واقعی عنصر نمودار را دریافت می‌کند.
auto pres = System::MakeObject<Presentation>(u"test.Pptx");
    
auto chart = System::ExplicitCast<Chart>(pres->get_Slides()->idx_get(0)->get_Shapes()->AddChart(ChartType::ClusteredColumn, 100.0f, 100.0f, 500.0f, 350.0f));
chart->ValidateChartLayout();

double x = chart->get_PlotArea()->get_ActualX();
double y = chart->get_PlotArea()->get_ActualY();
double w = chart->get_PlotArea()->get_ActualWidth();
double h = chart->get_PlotArea()->get_ActualHeight();

// ذخیره ارائه با نمودار
pres->Save(u"Chart_out.pptx", SaveFormat::Pptx);

Set the Layout Mode of a Chart Plot Area

Aspose.Slides برای C++ یک API ساده برای تنظیم حالت چیدمان ناحیه‌ نمودار فراهم می‌کند. ویژگی LayoutTargetType به کلاس‌های ChartPlotArea و IChartPlotArea اضافه شده است. اگر چیدمان ناحیه‌ نمودار به صورت دستی تعریف شود، این ویژگی مشخص می‌کند که آیا ناحیه‌ نمودار بر اساس داخل (بدون شامل کردن محورها و برچسب‌های محورها) یا خارج (شامل محورها و برچسب‌های محورها) چیدمان شود. دو مقدار ممکن وجود دارد که در شمارش‌گر LayoutTargetType تعریف شده‌اند.

  • LayoutTargetType.Inner - مشخص می‌کند که اندازه ناحیه‌ نمودار تنها اندازهٔ ناحیه‌ نمودار را تعیین می‌کند، بدون شامل کردن علامت‌های تیک و برچسب‌های محور.
  • LayoutTargetType.Outer - مشخص می‌کند که اندازه ناحیه‌ نمودار، علامت‌های تیک و برچسب‌های محور را نیز شامل می‌شود.

کد نمونه در زیر آورده شده است.

FAQ

واحدهای بازگشت ActualX، ActualY، ActualWidth و ActualHeight چیست؟

در پونت؛ 1 اینچ = 72 پونت. این‌ها واحدهای مختصات Aspose.Slides هستند.

ناحیه‌ نمودار (Plot Area) چطور با ناحیه‌ چارت (Chart Area) از نظر محتوا متفاوت است؟

ناحیه‌ نمودار ناحیهٔ رسم داده‌ها (سری‌ها، خطوط شبکه، خطوط روند و غیره) است؛ ناحیه‌ چارت شامل عناصر اطراف (عنوان، افسانه و غیره) می‌شود. در نمودارهای سه‌بعدی، ناحیه‌ نمودار شامل دیوارها/کف و محورها نیز می‌شود.

مقادیر X، Y، Width و Height ناحیه‌ نمودار هنگام چیدمان دستی چگونه تفسیر می‌شوند؟

اینها کسرهایی (0–1) از اندازهٔ کلی نمودار هستند؛ در این حالت، موقعیت‌یابی خودکار غیرفعال است و کسرهایی که تنظیم می‌کنید استفاده می‌شوند.

چرا موقعیت ناحیه‌ نمودار بعد از افزودن/جابه‌جایی افسانه تغییر کرد؟

افسانه در ناحیه‌ چارت خارج از ناحیه‌ نمودار قرار می‌گیرد اما بر چیدمان و فضای موجود تأثیر می‌گذارد، بنابراین وقتی موقعیت‌یابی خودکار فعال باشد، ناحیه‌ نمودار می‌تواند جابه‌جا شود. (این رفتار استاندارد برای نمودارهای PowerPoint است.)