פיצול מסמכי וורד

מסמכי MS Word נמצאים בשימוש נרחב כדי לשמור ולשתף מידע. במקרים מסוימים, ייתכן שיהיה עליך לפצל את הנתונים ממסמך Word שיכול להיות ממוקם בחלקים או בדפים שונים. כמו כן, ייתכן שיהיה עליך לפצל את העמודים של מסמך בודד למספר מסמכים. בהתאם לתרחישים כאלה, מאמר זה נועד להראות לך כיצד לפצל מסמכי MS Word באופן תוכנתי באמצעות C#.

C# API לפיצול מסמכי MS Word

Aspose.Words for .NET הוא ממשק API רב עוצמה לעיבוד תמלילים המאפשר לך ליצור ולתפעל מסמכי MS Word באמצעות C# או VB.NET. יחד עם זה, זה גם מאפשר לך לפצל מסמכי MS Word לפי סעיף, עמוד או טווח עמודים. אתה יכול להוריד את ה-API או להתקין אותו בתוך האפליקציה שלך באמצעות NuGet.

PM> Install-Package Aspose.Words

פיצול מסמכי Word לפי סעיף באמצעות C#

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

דוגמת הקוד הבאה מראה כיצד לפצל מסמכי MS Word לפי קטעים באמצעות C#.

// פתח מסמך וורד
Document doc = new Document("document.docx"); 

for (int i = 0; i < doc.Sections.Count; i++)
{
	// פצל מסמך לחלקים קטנים יותר, במקרה זה מפוצל לפי סעיף
	Section section = doc.Sections[i].Clone();

  // צור מסמך חדש
	Document newDoc = new Document();
	newDoc.Sections.Clear();

	Section newSection = (Section)newDoc.ImportNode(section, true);
	newDoc.Sections.Add(newSection);

	// שמור כל חלק כמסמך נפרד
	newDoc.Save($"splitted_{i}.docx");
}

פיצול מסמכי Word עמוד אחר עמוד באמצעות C#

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

  • טען את מסמך Word באמצעות המחלקה מסמך.
  • צור אובייקט של המחלקה DocumentPageSplitter ואתחול אותו עם האובייקט Document.
  • חזור על דפי המסמך.
  • חלץ כל עמוד לאובייקט Document חדש באמצעות שיטת DocumentPageSplitter.GetDocumentOfPage(int PageIndex).
  • שמור כל מסמך בשיטת Document.Save(String).

דוגמת הקוד הבאה מראה כיצד לפצל את מסמך Word לפי דפים באמצעות C#.

// פתח מסמך וורד
Document doc = new Document("Document.docx");

// צור ואתחול את מפצל דפי המסמך
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);

// שמור כל עמוד כמסמך נפרד
for (int page = 1; page <= doc.PageCount; page++)
{
	Document pageDoc = splitter.GetDocumentOfPage(page);
	pageDoc.Save($"spliteed_{page}.docx");
}

פיצול מסמכי Word לפי טווח עמודים באמצעות C#

ניתן גם לציין טווח עמודים כדי לפצל אותו מהמסמך המקורי באמצעות המחלקה DocumentPageSplitter. לדוגמה, אם אתה צריך לפצל את העמודים מ-2 ל-4, פשוט ציין את האינדקס של עמוד ההתחלה והסיום בשיטת DocumentPageSplitter.GetDocumentOfPageRange(int StartIndex, int EndIndex).

דוגמת הקוד הבאה מראה כיצד לפצל טווח עמודים ממסמך Word באמצעות C#.

// פתח מסמך וורד
Document doc = new Document("document.docx");

// צור ואתחול מפצל דפי מסמכים
DocumentPageSplitter splitter = new DocumentPageSplitter(doc);

// קבל את טווח הדפים
Document pageDoc = splitter.GetDocumentOfPageRange(3, 6);
pageDoc.Save("splitted.docx");

סיכום

במאמר זה, למדת כיצד לפצל מסמכי MS Word באופן תוכנתי באמצעות C#. התרחישים של פיצול מסמכי Word לפי מקטעים, דפים וטווחי עמודים נדונו יחד עם דוגמאות קוד. אתה יכול לחקור עוד על Aspose.Words עבור .NET באמצעות תיעוד.

ראה גם