แสดงซ่อนเนื้อหาที่คั่นหน้าในเอกสาร Word

การแนะนำ

พร้อมที่จะดำดิ่งสู่โลกแห่งการจัดการเอกสารด้วย Aspose.Words for .NET แล้วหรือยัง? ไม่ว่าคุณจะเป็นนักพัฒนาซอฟต์แวร์ที่ต้องการทำงานเอกสารโดยอัตโนมัติหรือเพียงแค่คนที่อยากรู้เกี่ยวกับการจัดการไฟล์ Word โดยทางโปรแกรม คุณก็มาถูกที่แล้ว วันนี้ เราจะมาสำรวจวิธีการแสดงและซ่อนเนื้อหาที่บุ๊กมาร์กไว้ในเอกสาร Word โดยใช้ Aspose.Words สำหรับ .NET คำแนะนำทีละขั้นตอนนี้จะทำให้คุณเป็นมืออาชีพในการควบคุมการเปิดเผยเนื้อหาตามบุ๊กมาร์ก มาเริ่มกันเลย!

ข้อกำหนดเบื้องต้น

ก่อนที่เราจะพูดถึงเนื้อหาสำคัญ มีบางสิ่งที่คุณต้องการ:

  1. Visual Studio: เวอร์ชันใดก็ได้ที่เข้ากันได้กับ .NET
  2. Aspose.Words สำหรับ .NET: ดาวน์โหลดที่นี่.
  3. ความเข้าใจพื้นฐานของ C#: หากคุณสามารถเขียนโปรแกรม “Hello World” ง่ายๆ ได้ คุณก็พร้อมแล้ว
  4. เอกสาร Word พร้อมบุ๊กมาร์ก: เราจะใช้เอกสารตัวอย่างพร้อมบุ๊กมาร์กสำหรับบทช่วยสอนนี้

นำเข้าเนมสเปซ

ก่อนอื่น มานำเข้าเนมสเปซที่จำเป็นกันก่อน สิ่งนี้ทำให้มั่นใจได้ว่าเรามีเครื่องมือทั้งหมดที่เราต้องการสำหรับงานของเรา

using System;
using Aspose.Words;
using Aspose.Words.Bookmark;

เมื่อเนมสเปซเหล่านี้พร้อมแล้ว เราทุกคนก็พร้อมที่จะเริ่มต้นการเดินทางของเราแล้ว

ขั้นตอนที่ 1: การตั้งค่าโครงการของคุณ

เอาล่ะ มาเริ่มต้นกันด้วยการตั้งค่าโปรเจ็กต์ของเราใน Visual Studio

สร้างโครงการใหม่

เปิด Visual Studio และสร้างโครงการ Console App (.NET Core) ใหม่ ตั้งชื่อให้ชื่อที่ติดหู เช่น “BookmarkVisibilityManager”

เพิ่ม Aspose.Words สำหรับ .NET

คุณจะต้องเพิ่ม Aspose.Words สำหรับ .NET ในโครงการของคุณ คุณสามารถทำได้ผ่าน NuGet Package Manager

  1. ไปที่เครื่องมือ > ตัวจัดการแพ็คเกจ NuGet > จัดการแพ็คเกจ NuGet สำหรับโซลูชัน
  2. ค้นหา “Aspose.Words”
  3. ติดตั้งแพ็คเกจ

ยอดเยี่ยม! ตอนนี้โครงการของเราได้รับการตั้งค่าแล้ว เรามาเริ่มการโหลดเอกสารของเรากันดีกว่า

ขั้นตอนที่ 2: การโหลดเอกสาร

เราจำเป็นต้องโหลดเอกสาร Word ที่มีบุ๊กมาร์ก สำหรับบทช่วยสอนนี้ เราจะใช้เอกสารตัวอย่างชื่อ “Bookmarks.docx”

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = "YOUR DOCUMENT DIRECTORY";
Document doc = new Document(dataDir + "Bookmarks.docx");

ข้อมูลโค้ดนี้จะกำหนดเส้นทางไปยังไดเร็กทอรีเอกสารของคุณและโหลดเอกสารลงในdoc วัตถุ.

ขั้นตอนที่ 3: แสดง/ซ่อนเนื้อหาที่บุ๊กมาร์ก

มาถึงส่วนที่สนุกแล้ว - การแสดงหรือซ่อนเนื้อหาตามบุ๊กมาร์ก เราจะสร้างวิธีการที่เรียกว่าShowHideBookmarkedContent เพื่อจัดการกับสิ่งนี้

ต่อไปนี้เป็นวิธีการที่จะสลับการมองเห็นเนื้อหาที่บุ๊กมาร์ก:

public void ShowHideBookmarkedContent(Document doc, string bookmarkName, bool isHidden)
{
    Bookmark bm = doc.Range.Bookmarks[bookmarkName];

    Node currentNode = bm.BookmarkStart;
    while (currentNode != null && currentNode.NodeType != NodeType.BookmarkEnd)
    {
        if (currentNode.NodeType == NodeType.Run)
        {
            Run run = currentNode as Run;
            run.Font.Hidden = isHidden;
        }
        currentNode = currentNode.NextSibling;
    }
}

รายละเอียดของวิธีการ

  • การเรียกค้นบุ๊กมาร์ก:Bookmark bm = doc.Range.Bookmarks[bookmarkName]; เรียกบุ๊กมาร์ก
  • Node Traversal: เราสำรวจโหนดภายในบุ๊กมาร์ก
  • Visibility Toggle: หากโหนดเป็นRun (ข้อความต่อเนื่องกัน) เราตั้งค่าไว้Hidden คุณสมบัติ.

ขั้นตอนที่ 4: การใช้วิธีการ

ด้วยวิธีการของเรา ลองใช้วิธีนี้เพื่อแสดงหรือซ่อนเนื้อหาตามบุ๊กมาร์ก

ShowHideBookmarkedContent(doc, "MyBookmark1", true);

บรรทัดโค้ดนี้จะซ่อนเนื้อหาภายในบุ๊กมาร์กชื่อ “MyBookmark1”

ขั้นตอนที่ 5: บันทึกเอกสาร

สุดท้ายนี้ มาบันทึกเอกสารที่แก้ไขของเรากัน

doc.Save(dataDir + "WorkingWithBookmarks.ShowHideBookmarks.docx");

วิธีนี้จะบันทึกเอกสารตามการเปลี่ยนแปลงที่เราได้ทำ

บทสรุป

และคุณก็ได้แล้ว! คุณเพิ่งเรียนรู้วิธีการแสดงและซ่อนเนื้อหาที่บุ๊กมาร์กในเอกสาร Word โดยใช้ Aspose.Words สำหรับ .NET เครื่องมืออันทรงพลังนี้ทำให้การจัดการเอกสารเป็นเรื่องง่าย ไม่ว่าคุณจะสร้างรายงานอัตโนมัติ สร้างเทมเพลต หรือเพียงแค่ซ่อมแซมไฟล์ Word ขอให้มีความสุขในการเขียนโค้ด!

คำถามที่พบบ่อย

ฉันสามารถสลับบุ๊กมาร์กหลายรายการพร้อมกันได้หรือไม่

ใช่คุณสามารถโทรหาShowHideBookmarkedContent วิธีการสำหรับบุ๊กมาร์กแต่ละอันที่คุณต้องการสลับ

การซ่อนเนื้อหาส่งผลต่อโครงสร้างของเอกสารหรือไม่

ไม่ การซ่อนเนื้อหาจะส่งผลต่อการมองเห็นเท่านั้น เนื้อหายังคงอยู่ในเอกสาร

ฉันสามารถใช้วิธีนี้กับเนื้อหาประเภทอื่นได้หรือไม่?

วิธีการนี้จะสลับการทำงานข้อความโดยเฉพาะ สำหรับเนื้อหาประเภทอื่นๆ คุณจะต้องแก้ไขตรรกะการข้ามโหนด

Aspose.Words สำหรับ .NET ฟรีหรือไม่

Aspose.Words ให้ทดลองใช้ฟรีที่นี่ แต่จำเป็นต้องมีใบอนุญาตเต็มรูปแบบสำหรับการใช้งานจริง คุณสามารถซื้อได้ที่นี่.

ฉันจะรับการสนับสนุนได้อย่างไรหากฉันประสบปัญหา

คุณสามารถรับการสนับสนุนจากชุมชน Asposeที่นี่.