תכונות ופונקציונליות

תכונות ופונקציונליות

תכונות ופונקציונליות

דף זה מכסה את יכולות יצירת התרשימים של Aspose.Words FOSS עבור .NET עם דוגמאות C# עובדות, בנוי סביב DocumentBuilder.InsertChart() ו Chart מודל האובייקט. מודל האובייקט המלא של הספרייה למסמכים (פסקאות, טבלאות, סגנונות, סימניות, מקטעים) מתואר בתצוגת המוצר וב Quickstart מדריך.


יצירת מסמך עם גרף

הכנס צורת גרף עם DocumentBuilder.InsertChart(), ואז גש לאובייקט Chart שלו דרך ה-Shape שהוחזר. נקה את הסדרה שנוצרה באופן ברירת מחדל לפני הוספת נתונים אמיתיים:

using Aspose.Words;
using Aspose.Words.Drawing.Charts;

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Shape shape = builder.InsertChart(ChartType.Line, 432, 252);
Chart chart = shape.Chart;

// Delete default generated series.
chart.Series.Clear();

string[] categories = new string[] { "AW Category 1", "AW Category 2", "AW Category 3" };
chart.Series.Add("AW Series 1", categories, new double[] { 4.3, 2.5, 3.5 });

doc.Save("chart.docx");

סדרות גרף, נקודות נתונים וסמנים

Chart.Series הוא ChartSeriesCollection. כל ChartSeries חושף את נקודות הנתונים האישיות שלו דרך DataPoints, דבר שמאפשר לך להתאים סמן או עיצוב של נקודה אחת מבלי להשפיע על שאר הסדרה:

Shape shape = builder.InsertChart(ChartType.Line, 432, 252);
Chart chart = shape.Chart;
chart.Series.Clear();
chart.Series.Add("AW Series 1", categories, new double[] { 4.3, 2.5, 3.5 });

ChartSeries series = chart.Series[0];
ChartDataPointCollection points = series.DataPoints;

ChartDataPoint point1 = points[0];
ChartDataPoint point2 = points[1];

point1.InvertIfNegative = true;
point1.Marker.Symbol = MarkerSymbol.Square;
point2.InvertIfNegative = true;
point2.Marker.Symbol = MarkerSymbol.Diamond;

// Reset a single data point back to the series' inherited default formatting.
point1.ClearFormat();

תוויות נתוני גרף

ChartSeries.DataLabels הוא ChartDataLabelCollection השולט בתוויות עבור כל נקודה בסדרה בבת אחת. השתמש ב-DataLabels[i] כדי לעקוף ChartDataLabel יחיד:

Shape shape = builder.InsertChart(ChartType.Line, 432, 252);
Chart chart = shape.Chart;
chart.Series.Clear();
chart.Series.Add("AW Series 1", categories, new double[] { 4.3, 2.5, 3.5 });

ChartSeries series = chart.Series[0];
series.HasDataLabels = true;
series.DataLabels.ShowValue = true;

ChartDataLabel label = series.DataLabels[1];
label.ShowCategoryName = true;
label.Position = ChartDataLabelPosition.Below;

כותרות צירי גרף

Chart.AxisX ו-Chart.AxisY כל אחד חושף ChartAxisTitle דרך המאפיין Title:

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Shape shape = builder.InsertChart(ChartType.Column, 432, 252);

Chart chart = shape.Chart;
ChartAxisTitle xTitle = chart.AxisX.Title;
ChartAxisTitle yTitle = chart.AxisY.Title;

xTitle.Show = true;
xTitle.Text = "Categories";
yTitle.Show = true;
yTitle.Text = "Values";

מקרא הגרף והגופנים

Chart.Legend מציג LegendEntries, אחד ChartLegendEntry לכל סדרה, שלכל אחד יש Font משלו. Font מיישם עיצוב מילוי, ולכן Font.Fill.Solid() מגדיר צבע טקסט אחיד באותו אופן שבו הוא היה מוגדר בכל ריצה מעוצבת אחרת:

using System.Drawing;

Shape shape = builder.InsertChart(ChartType.Column, 432, 252);

ChartLegend legend = shape.Chart.Legend;
Font font1 = legend.LegendEntries[0].Font;
Font font2 = legend.LegendEntries[1].Font;

font1.Fill.Solid(Color.Blue);
font2.Color = Color.Green;

טבלת נתוני גרף

Chart.DataTable הוא ChartDataTable המציג את ערכי הסדרה הבסיסיים מתחת לגרף. המאפיינים Has*Border ו-HasLegendKeys שלו שולטים באילו חלקים נראים:

Shape shape = builder.InsertChart(ChartType.Column, 432, 252);
ChartDataTable dataTable = shape.Chart.DataTable;

dataTable.HasLegendKeys = false;
dataTable.HasHorizontalBorder = true;
dataTable.HasVerticalBorder = true;
dataTable.HasOutlineBorder = false;

doc.Save("chart-report.docx");

טיפים ושיטות מומלצות

  • DocumentBuilder.InsertChart() ממלא את התרשים החדש בסדרה שנוצרה באופן ברירת מחדל — יש לקרוא ל-chart.Series.Clear() לפני הוספת הנתונים שלך, אחרת ברירות המחדל יישארו לצד זה.
  • השתמש ב-ChartSeries.DataLabels[i] כדי למקד תווית נתונים אחת כאשר רק כמה נקודות דורשות עיצוב מותאם; השתמש במאפייני הרמה של האוסף (DataLabels.ShowValue וכדומה) כדי להגדיר ברירת מחדל לכל תווית בסדרה בבת אחת.
  • ClearFormat() זמינה הן ב-ChartDataPoint והן ב-ChartDataLabelCollection — היא מאפסת את העיצוב הישיר חזרה למה שהסדרה יורשת כברירת מחדל.
  • מנוע הערכת השדות מעדכן שדות תוכן כגון DATE ו-DOCPROPERTY באופן תכנותי, אך שדות התלויים בפריסת העמוד (מספרי עמודים במפת תוכן, NUMPAGES) מתבצעים לערכי מציין מקום 0 מכיוון שהגרסה הזו אינה כוללת את מנוע הפריסה.
  • ראה את מדריך התקנה להוסיף את החבילה דרך NuGet, או לבנות ממקור, לפני ההתייחסות ל-APIs אלה.

בעיות נפוצות

בעיהסיבהתיקון
מספרי עמודים או ערכי תוכן עניינים מציגים 0מהדורה זו אינה כוללת את מנוע פריסת העמוד/הצגההתנהגות צפויה — ערכי שדות התלויים בפריסה אינם מחושבים; השתמש בגרסה המסחרית Aspose.Words עבור .NET אם אתה צריך אותם
Document.Save() ל-.pdf, .xps, או סיומת תמונה נכשלהפורמטי רינדור אינם נכללים במהדורה זושמור ל-DOCX, DOCM, DOTX, DOTM, Flat OPC, Markdown, או טקסט פשוט במקום זאת
טעינת קובץ .doc, .rtf, .odt, .html, או .epub נכשלהרק DOCX, DOCM, DOTX, DOTM, Flat OPC, Markdown וטקסט פשוט נתמכים לטעינה/שמירההמר תחילה את קובץ המקור ל-DOCX, או השתמש במהדורה המסחרית
סדרת התרשים ברירת המחדל עדיין מופיעה לאחר הוספת נתונים מותאמיםchart.Series.Clear() לא נקרא לאחר InsertChart()נקה את הסדרה שנוצרה כברירת מחדל לפני קריאה לchart.Series.Add()

FAQ

מדוע מספרי העמודים במפת התוכן שלי מוצגים כ-0?

גרסת FOSS זו אינה כוללת את תת-מערכת פריסת העמודים וההדמיה, ולכן כל ערך שדה שתלוי בפריסת העמוד — כולל מספרי העמודים — מתחלף למילוי מקום 0 במקום ערך מחושב.

האם אני יכול לייצא מסמך ל-PDF או לפורמט תמונה?

לא בגרסה זו. ייצוא ל-PDF, XPS ותמונות תלוי באותה תת-מערכת הדמיה שהוסרה כדי לשמור על גרסה חינמית. השתמש ב-Aspose.Words המסחרי עבור .NET עבור הפלטים האלה.

האם אני יכול ליצור חתימה דיגיטלית חדשה על מסמך?

לא — גרסה זו יכולה לאמת חתימות דיגיטליות קיימות אך אינה יכולה ליצור חדשות.

אילו סוגי גרפים InsertChart() תומך?

InsertChart() מקבל ערך ChartType — האינום מכסה משפחות גרפים סטנדרטיות כגון line, column, bar, pie, area, doughnut, radar, scatter, stock, ו-surface, כולל ווריאנטים stacked ו-3D.

סיכום API Reference

מחלקה / מאפייןתיאור
Documentאובייקט מסמך שורש; Save() כותב ל-DOCX, Markdown או טקסט רגיל
DocumentBuilderסמן ברמה גבוהה API; InsertChart() מוסיף צורת גרף
Shapeאובייקט ציור שמוחזר על ידי InsertChart(); חושף את המאפיין Chart
Chartאובייקט גרף; Series, Legend, DataTable, AxisX, AxisY, Title
ChartSeries / ChartSeriesCollectionנתוני סדרה (Add, Clear) והגדרות לכל סדרה
ChartDataPoint / ChartDataPointCollectionעיצוב לכל נקודה; ClearFormat()
ChartMarker / MarkerSymbolצורת וגודל סימון נקודת הנתונים
ChartDataLabel / ChartDataLabelCollectionהגדרות תצוגת תוויות לכל תווית ולכל האוסף
ChartAxisTitleטקסט הכותרת מוצג בChart.AxisX / Chart.AxisY
ChartLegend / ChartLegendEntryמקרא התרשים והרשומות שלו לכל סדרה
ChartDataTableטבלת נתונים המוצגת מתחת לתרשים
Font / Fillעיצוב טקסט ומילוי (צבע אחיד, גרדיאנט) על רכיבי הטקסט בתרשים

ראה גם

 עברית