הקדמה

Aspose.Words FOSS עבור .NET זמין כעת: ספרייה חינמית וקוד פתוח של .NET ליצירה, קריאה ועריכת מסמכי Word ב‑C# טהור, ללא צורך בהתקנת Microsoft Word. היא מיועדת למפתחים שצריכים ליצור דוחות ומכתבים מתבניות, לקרוא ולשנות תוכן מקבצי .docx קיימים, או להמיר מסמכי Word ל‑Markdown או טקסט פשוט כחלק מצינור עיבוד, ללא צורך ברכישת SDK מסחרי.

הספרייה משוחררת תחת רישיון MIT ואין לה תלותיות מקומיות — הכל פועל בקוד מנוהל. היא ממוקדת ב‑.NET Standard 2.0, ולכן פועלת על .NET Framework 4.6.2+ ו‑.NET 6, 8 ו‑10, ב‑Windows, Linux ו‑macOS. התקינו אותה דרך NuGet, או בניית הספרייה מהמקור עם פקודה יחידה dotnet build (ראו Quick Start למטה).

מה שמבדל זאת מספריית מסמכים קוד פתוח חדשה טיפוסית הוא שהיא אינה כתיבה מחדש או עטיפה. Aspose.Words FOSS עבור .NET הוא בסיס הקוד האותנטי של Aspose.Words — אותו מנוע מסמכים שמעבד מסמכי Word בייצור מאז 2003 — מצומצם לליבה חינמית ברישיון MIT. מפתחים אשר חורגים מהגרסה הזו וזקוקים לסידור דפים, רינדור, או לממירי פורמט נוספים יכולים לעבור לגרסה המסחרית Aspose.Words עבור .NET ללא צורך בכתיבת קוד מחדש, מכיוון שזהו אותו API בסיסי.


תכונות מרכזיות

יצירה ועריכה של מסמכים

בנו מסמכים מאפס עם new Document() ו‑DocumentBuilder ברמה גבוהה, או פתחו קבצי .docx קיימים עם new Document(fileName). DocumentBuilder מספק שיטות כתיבה רציפות כגון Write(), Writeln(), InsertParagraph() ו‑InsertBreak(), יחד עם מאפייני עיצוב (Font, ParagraphFormat, PageSetup) החלים על התוכן בזמן הוספתו. לגישה ברמת‑הנמוכה, עברו ישירות בעץ המסמך דרך צמתים Section, Paragraph, Run ו‑Table, או ירשו מ‑DocumentVisitor כדי לעבד כל סוג צומת במעבר יחיד.

טבלאות ורשימות

טבלאות נבנות מצמתים Table, Row ו‑Cell. Table.SetBorders(), Table.SetShading() ו‑Table.AutoFit() מעצבים את כל הטבלה בבת אחת, בעוד Table.Rows וגישה ל‑Cell לכל שורה מספקת שליטה מדויקת יותר. רשימות ממוספרות ומסומנות עובדות דרך ListCollection ו‑ListFormat: החילו סגנון מובנה עם ListFormat.ApplyBulletDefault() או ApplyNumberDefault(), או רשמו הגדרת רשימה מותאמת עם ListCollection.Add().

מעקב שינויים והגנת מסמך

הקרא ל-Document.StartTrackRevisions() לפני העריכה כדי לתעד הוספות, מחיקות ושינויים בעיצוב, ואז לבדוק, לקבל או לדחות אותם דרך RevisionCollection (AcceptAll(), RejectAll(), Accept(criteria), Reject(criteria)), או לקבל את כולם בבת אחת עם Document.AcceptAllRevisions(). Document.Protect() מחילה הגנת סיסמה או אכיפת קריאה בלבד באמצעות המונה DocumentSecurity (ReadOnlyEnforced, ReadOnlyRecommended, PasswordProtected והערכים הקשורים), ו-Document.Unprotect() מבטל זאת.

שדות, מקרו וחתימות דיגיטליות

מנוע הערכת השדות מעדכן שדות כגון FieldDate (שדה DATE) ו-FieldDocProperty (שדה DOCPROPERTY) במקומם דרך Document.UpdateFields() — שדות התלויים בפריסת העמוד, כגון מספרי עמודים, מחושבים כערכי מציין מקום מכיוון שהפריסת העמוד אינה חלק מהגרסה הזו. קבצי DOCM ו‑DOTM עוברים הלוך ושוב עם פרויקטי VBA שלהם שלמים. ניתן לבדוק חתימות דיגיטליות קיימות דרך DigitalSignatureCollection ו‑DigitalSignature (IsValid, SubjectName, IssuerName, SignTime) כדי לאשר אם המסמך חתום ולא שונה; יצירת חתימות חדשות איננה חלק מהגרסה הזו.

תרשימים

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

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

התחלה מהירה

Aspose.Words FOSS עבור .NET זמין דרך NuGet:

dotnet add package Aspose.Words.FOSS

כדי לבנות מהמקור במקום זאת:

git clone https://github.com/aspose-words-foss/Aspose.Words-FOSS-for-.NET.git
cd Aspose.Words-FOSS-for-.NET
dotnet build Aspose.Words.sln -c Release

לאחר מכן הוסף הפנייה לפרויקט ל-Aspose.Words.csproj מהיישום שלך. עם ההפנייה במקום, צור מסמך עם גרף ושמור אותו ל‑DOCX:

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");
Console.WriteLine("Saved chart.docx");

פורמטים נתמכים

עיצובהרחבהקריאהכתיבה
DOCX.docx
DOCM.docm
DOTX.dotx
DOTM.dotm
OPC שטוח (כל הווריאנטים)(שונים)
Markdown.md
Text.txt

הגרסה הזו מודעת משאירה מחוץ לפריסה והצגה של דפים — אין ייצוא ל‑PDF, XPS או תמונה, ואין הדפסה, מה שאומר שגם ערכי שדות תלויי פריסה כגון מספרי דפים מתקבלים כמחלפים במקום להיות מחושבים. ממירי הפורמט הנוספים (DOC, RTF, ODT, HTML, EPUB, MHTML, MOBI, AZW3, ו‑WordML) אינם נקראים ולא נכתבים, וכן ביצוע מיזוג דואר, LINQ Reporting, השוואת מסמכים, יצירת חתימות דיגיטליות חדשות, ותת‑קבוצת גופנים משובצים אינם נכללים. אלו הם אותם תתי‑מערכות שהוסרו מהקוד המסחרי כדי לשמור על גרסה זו בחינם.


קוד פתוח & רישוי

Aspose.Words FOSS עבור .NET שוחרר תחת רישיון MIT, חינמי לשימוש מסחרי ואישי כאחד ללא תמלוגים או הגבלות הפצה. המקור המלא זמין ב‑GitHub ב‑ Aspose.Words FOSS עבור מאגר .NET.


התחלה

משאבים קשורים