ย้ายโหนดในเอกสารที่ติดตาม
ในคำแนะนำทีละขั้นตอนนี้ เราจะอธิบายวิธีย้ายโหนดในเอกสาร Word ที่ติดตามโดยใช้ Aspose.Words สำหรับ .NET เราจะจัดเตรียมซอร์สโค้ดที่สมบูรณ์ให้กับคุณ และแสดงวิธีจัดรูปแบบเอาต์พุตมาร์กดาวน์
ขั้นตอนที่ 1: การสร้างเอกสาร
ขั้นตอนแรกคือการสร้างเอกสารใหม่และเพิ่มย่อหน้า
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Paragraph 1");
builder.Writeln("Paragraph 2");
builder.Writeln("Paragraph 3");
builder.Writeln("Paragraph 4");
builder.Writeln("Paragraph 5");
builder.Writeln("Paragraph 6");
Body body = doc.FirstSection.Body;
Console.WriteLine("Number of paragraphs: {0}", body.Paragraphs.Count);
ขั้นตอนที่ 2: ติดตามการแก้ไข
เราจะเปิดใช้งานการติดตามการแก้ไขในเอกสาร
doc.StartTrackRevisions("Author", new DateTime(2020, 12, 23, 14, 0, 0));
ขั้นตอนที่ 3: ย้ายโหนด
เราจะย้ายโหนด (ย่อหน้า) จากตำแหน่งหนึ่งไปยังอีกตำแหน่งหนึ่งในขณะที่สร้างการแก้ไข
Node node = body.Paragraphs[3];
Node endNode = body.Paragraphs[5].NextSibling;
Node referenceNode = body.Paragraphs[0];
while (node != endNode)
{
Node nextNode = node. NextSibling;
body. InsertBefore(node, referenceNode);
node = nextNode;
}
ขั้นตอนที่ 4: หยุดการติดตามบทวิจารณ์
เราจะหยุดติดตามการแก้ไขในเอกสาร
doc.StopTrackRevisions();
ขั้นตอนที่ 5: บันทึกเอกสาร
หลังจากแทรกฟิลด์แบบฟอร์มป้อนข้อความแล้ว ให้บันทึกเอกสารไปยังตำแหน่งที่ต้องการโดยใช้Save
วิธี. ตรวจสอบให้แน่ใจว่าได้ระบุเส้นทางไฟล์ที่เหมาะสม:
Console.WriteLine("Paragraph count: {0}", body.Paragraphs.Count);
doc.Save(dataDir + "WorkingWithRevisions.MoveNodeInTrackedDocument.docx");
ตัวอย่างซอร์สโค้ดสำหรับโหนดย้ายในเอกสารที่ถูกติดตามโดยใช้ Aspose.Words สำหรับ .NET
นี่คือซอร์สโค้ดแบบเต็มสำหรับการย้ายโหนดในเอกสารที่ถูกติดตามโดยใช้ Aspose.Words สำหรับ .NET:
// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Writeln("Paragraph 1");
builder.Writeln("Paragraph 2");
builder.Writeln("Paragraph 3");
builder.Writeln("Paragraph 4");
builder.Writeln("Paragraph 5");
builder.Writeln("Paragraph 6");
Body body = doc.FirstSection.Body;
Console.WriteLine("Paragraph count: {0}", body.Paragraphs.Count);
// เริ่มติดตามการแก้ไข
doc.StartTrackRevisions("Author", new DateTime(2020, 12, 23, 14, 0, 0));
// สร้างการแก้ไขเมื่อย้ายโหนดจากที่หนึ่งไปยังอีกที่หนึ่ง
Node node = body.Paragraphs[3];
Node endNode = body.Paragraphs[5].NextSibling;
Node referenceNode = body.Paragraphs[0];
while (node != endNode)
{
Node nextNode = node.NextSibling;
body.InsertBefore(node, referenceNode);
node = nextNode;
}
// หยุดกระบวนการติดตามการแก้ไข
doc.StopTrackRevisions();
// มีอีก 3 ย่อหน้าในช่วงการย้ายจาก
Console.WriteLine("Paragraph count: {0}", body.Paragraphs.Count);
doc.Save(dataDir + "WorkingWithRevisions.MoveNodeInTrackedDocument.docx");
บทสรุป
ในบทช่วยสอนนี้ เราได้เรียนรู้วิธีย้ายโหนดในเอกสาร Word ที่ติดตามโดยใช้ Aspose.Words สำหรับ .NET ด้วยการทำตามขั้นตอนในการสร้างเอกสาร การเปิดใช้งานการติดตามการแก้ไข การย้ายโหนด และการหยุดการติดตามการแก้ไข เราจึงสามารถดำเนินการจัดการนี้ได้สำเร็จ Aspose.Words for .NET เป็นเครื่องมืออันทรงพลังสำหรับการประมวลผลคำด้วยเอกสาร Word และนำเสนอคุณสมบัติขั้นสูงสำหรับการจัดการการแก้ไข ตอนนี้คุณสามารถใช้ความรู้นี้เพื่อย้ายโหนดในเอกสาร Word ของคุณเองในขณะที่ติดตามการแก้ไขโดยใช้ Aspose.Words สำหรับ .NET
คำถามที่พบบ่อย
ถาม: ฉันจะเปิดใช้งานการติดตามการแก้ไขในเอกสาร Aspose.Words สำหรับ .NET ได้อย่างไร
ตอบ: หากต้องการเปิดใช้งานการติดตามการแก้ไขในเอกสาร Aspose.Words สำหรับ .NET คุณสามารถใช้StartTrackRevisions
วิธีการของDocument
วัตถุ. วิธีการนี้ใช้พารามิเตอร์ชื่อผู้เขียนการแก้ไขและวันที่เริ่มต้นการติดตามผลการแก้ไข
doc.StartTrackRevisions("Author", new DateTime(2020, 12, 23, 14, 0, 0));
ถาม: ฉันจะย้ายโหนดในเอกสารที่ถูกติดตามโดยไม่สร้างการแก้ไขได้อย่างไร
ตอบ: หากคุณต้องการย้ายโหนดในเอกสารที่ติดตามโดยไม่สร้างการแก้ไข คุณสามารถใช้Remove
และInsertAfter
หรือInsertBefore
วิธีการของNode
วัตถุ. ตัวอย่างเช่น เมื่อต้องการย้ายย่อหน้าหลังจากย่อหน้าอื่น คุณสามารถใช้โค้ดต่อไปนี้:
Node nodeToMove = document.FirstSection.Body.Paragraphs[0];
Node referenceNode = document.FirstSection.Body.Paragraphs[1];
nodeToMove.Remove();
document.FirstSection.Body.InsertAfter(nodeToMove, referenceNode);
ถาม: ฉันจะหยุดการติดตามการแก้ไขในเอกสาร Aspose.Words สำหรับ .NET ได้อย่างไร
ตอบ: หากต้องการหยุดติดตามการแก้ไขในเอกสาร Aspose.Words สำหรับ .NET คุณสามารถใช้StopTrackRevisions
วิธีการของDocument
วัตถุ.
doc.StopTrackRevisions();