# سفارشی‌سازی نواحی نمودارهای ارائه در C++

> کشف کنید چگونه نواحی نمودارهای ارائه در پرزن تیشن‌های PowerPoint را با Aspose.Slides برای C++ سفارشی‌سازی کنید. به‌سادگی ظاهر اسلایدهای خود را بهبود ببخشید.

Source: https://docs.aspose.com/slides/fa/cpp/chart-plot-area/
Updated: 2026-06-13

## **Overview**

این مقاله نشان می‌دهد چگونه با ناحیه‌ نمودار (Plot Area) در Aspose.Slides کار کنید. توضیح می‌دهد چگونه موقعیت و اندازه واقعی ناحیه‌ نمودار را با اعتبارسنجی چیدمان نمودار و سپس خواندن مقادیر X، Y، عرض و ارتفاع به دست آورید.

همچنین نشان می‌دهد چگونه حالت چیدمان ناحیه‌ نمودار را هنگام تنظیم دستی چیدمان، با استفاده از `LayoutTargetType` برای تعیین اینکه آیا ناحیه‌ نمودار بر اساس ناحیه داخلی یا ناحیه خارجی همراه با محورها و برچسب‌های محورها محاسبه شود، پیکربندی کنید.

## **Get Width and Height of a Chart Plot Area**
Aspose.Slides برای C++ یک API ساده فراهم می‌کند برای . 

1. یک نمونه از کلاس [Presentation](https://reference.aspose.com/slides/fa/cpp/class/aspose.slides.presentation) ایجاد کنید.
2. به اولین اسلاید دسترسی پیدا کنید.
3. نمودار با داده‌های پیش‌فرض اضافه کنید.
4. قبل از دریافت مقادیر واقعی، متد IChart::ValidateChartLayout() را صدا بزنید.
5. موقعیت X واقعی (چپ) عنصر نمودار نسبت به گوشهٔ بالا‑چپ نمودار را دریافت می‌کند.
6. موقعیت Y واقعی عنصر نمودار نسبت به گوشهٔ بالا‑چپ نمودار را دریافت می‌کند.
7. عرض واقعی عنصر نمودار را دریافت می‌کند.
8. ارتفاع واقعی عنصر نمودار را دریافت می‌کند.

``` cpp
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** - مشخص می‌کند که اندازه ناحیه‌ نمودار، علامت‌های تیک و برچسب‌های محور را نیز شامل می‌شود.

کد نمونه در زیر آورده شده است.

{{< gist "aspose-com-gists" "81aeb05e6d3a070aa76fdea22ed53bc7" "Examples-SlidesCPP-SetLayoutMode-SetLayoutMode.cpp" >}}

## **FAQ**

**واحدهای بازگشت ActualX، ActualY، ActualWidth و ActualHeight چیست؟**

در پونت؛ 1 اینچ = 72 پونت. این‌ها واحدهای مختصات Aspose.Slides هستند.

**ناحیه‌ نمودار (Plot Area) چطور با ناحیه‌ چارت (Chart Area) از نظر محتوا متفاوت است؟**

ناحیه‌ نمودار ناحیهٔ رسم داده‌ها (سری‌ها، خطوط شبکه، خطوط روند و غیره) است؛ ناحیه‌ چارت شامل عناصر اطراف (عنوان، افسانه و غیره) می‌شود. در نمودارهای سه‌بعدی، ناحیه‌ نمودار شامل دیوارها/کف و محورها نیز می‌شود.

**مقادیر X، Y، Width و Height ناحیه‌ نمودار هنگام چیدمان دستی چگونه تفسیر می‌شوند؟**

اینها کسرهایی (0–1) از اندازهٔ کلی نمودار هستند؛ در این حالت، موقعیت‌یابی خودکار غیرفعال است و کسرهایی که تنظیم می‌کنید استفاده می‌شوند.

**چرا موقعیت ناحیه‌ نمودار بعد از افزودن/جابه‌جایی افسانه تغییر کرد؟**

افسانه در ناحیه‌ چارت خارج از ناحیه‌ نمودار قرار می‌گیرد اما بر چیدمان و فضای موجود تأثیر می‌گذارد، بنابراین وقتی موقعیت‌یابی خودکار فعال باشد، ناحیه‌ نمودار می‌تواند جابه‌جا شود. (این رفتار استاندارد برای نمودارهای PowerPoint است.)
