คั่นคอลัมน์ตารางในเอกสาร Word
ในบทความนี้ เราจะสำรวจซอร์สโค้ด C# ด้านบนเพื่อทำความเข้าใจวิธีใช้ฟังก์ชัน Bookmark Table Columns ในไลบรารี Aspose.Words สำหรับ .NET คุณลักษณะนี้ช่วยให้คุณสามารถบุ๊กมาร์กคอลัมน์เฉพาะของตารางในเอกสาร Word และเข้าถึงเนื้อหาของคอลัมน์นั้นได้
ข้อกำหนดเบื้องต้น
- ความรู้พื้นฐานของภาษา C#
- สภาพแวดล้อมการพัฒนา .NET ที่ติดตั้งไลบรารี Aspose.Words
ขั้นตอนที่ 1: การสร้างตาราง
ก่อนที่จะสร้างบุ๊กมาร์กบนคอลัมน์ของตาราง เราต้องสร้างตารางก่อนโดยใช้ aDocumentBuilder
วัตถุ. ในตัวอย่างของเรา เราสร้างตารางที่มีสองแถวและสองคอลัมน์:
builder. StartTable();
builder. InsertCell();
builder. StartBookmark("MyBookmark");
builder.Write("This is cell 1 of row 1");
builder. InsertCell();
builder.Write("This is cell 2 of row 1");
builder. EndRow();
builder. InsertCell();
builder.Writeln("This is cell 1 of row 2");
builder. InsertCell();
builder.Writeln("This is cell 2 of row 2");
builder. EndRow();
builder. EndTable();
ขั้นตอนที่ 2: การสร้างบุ๊กมาร์กคอลัมน์
เราใช้StartBookmark
วิธีสร้างบุ๊กมาร์กบนคอลัมน์เฉพาะของตาราง ในตัวอย่างของเรา เราใช้ชื่อ “MyBookmark” สำหรับบุ๊กมาร์ก:
builder. StartBookmark("MyBookmark");
ขั้นตอนที่ 3: เข้าถึงเนื้อหาคอลัมน์
เราอ่านบุ๊กมาร์กทั้งหมดในเอกสารและแสดงชื่อ หากบุ๊กมาร์กเป็นคอลัมน์ เราจะเข้าถึงเนื้อหาของคอลัมน์นั้นโดยใช้ดัชนีคอลัมน์และGetText
วิธี:
foreach (Bookmark
bookmark in doc.Range.Bookmarks)
{
Console.WriteLine("Bookmark: {0}{1}", bookmark.Name, bookmark.IsColumn?" (Column)": "");
if (bookmark.IsColumn)
{
if (bookmark.BookmarkStart.GetAncestor(NodeType.Row) is Row row && bookmark.FirstColumn < row.Cells.Count)
Console.WriteLine(row.Cells[bookmark.FirstColumn].GetText().TrimEnd(ControlChar.CellChar));
}
}
ตัวอย่างซอร์สโค้ดสำหรับคอลัมน์ตารางบุ๊กมาร์กโดยใช้ Aspose.Words สำหรับ .NET
นี่คือตัวอย่างซอร์สโค้ดแบบเต็มเพื่อสาธิตการสร้างบุ๊กมาร์กบนคอลัมน์ตารางโดยใช้ Aspose.Words สำหรับ .NET:
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.StartTable();
builder.InsertCell();
builder.StartBookmark("MyBookmark");
builder.Write("This is row 1 cell 1");
builder.InsertCell();
builder.Write("This is row 1 cell 2");
builder.EndRow();
builder.InsertCell();
builder.Writeln("This is row 2 cell 1");
builder.InsertCell();
builder.Writeln("This is row 2 cell 2");
builder.EndRow();
builder.EndTable();
builder.EndBookmark("MyBookmark");
foreach (Bookmark bookmark in doc.Range.Bookmarks)
{
Console.WriteLine("Bookmark: {0}{1}", bookmark.Name, bookmark.IsColumn ? " (Column)" : "");
if (bookmark.IsColumn)
{
if (bookmark.BookmarkStart.GetAncestor(NodeType.Row) is Row row && bookmark.FirstColumn < row.Cells.Count)
Console.WriteLine(row.Cells[bookmark.FirstColumn].GetText().TrimEnd(ControlChar.CellChar));
}
}
บทสรุป
ในบทความนี้ เราได้สำรวจซอร์สโค้ด C# เพื่อทำความเข้าใจวิธีใช้ฟังก์ชัน Bookmark Table Columns ของ Aspose.Words สำหรับ .NET เราทำตามคำแนะนำทีละขั้นตอนเพื่อบุ๊กมาร์กคอลัมน์เฉพาะของตารางในเอกสาร Word และข้ามไปยังเนื้อหาของคอลัมน์นั้น
คำถามที่พบบ่อยสำหรับคอลัมน์ตารางบุ๊กมาร์กในเอกสาร Word
ถาม: ข้อกำหนดเบื้องต้นในการใช้ฟีเจอร์ “บุ๊กมาร์กสำหรับคอลัมน์ตาราง” ใน Aspose.Words สำหรับ .NET คืออะไร
ตอบ: หากต้องการใช้ฟีเจอร์ “บุ๊กมาร์กสำหรับคอลัมน์ตาราง” ใน Aspose.Words สำหรับ .NET คุณต้องมีความรู้พื้นฐานเกี่ยวกับภาษา C# คุณต้องมีสภาพแวดล้อมการพัฒนา .NET ที่ติดตั้งไลบรารี Aspose.Words ด้วย
ถาม: จะสร้างตารางที่มีคอลัมน์ในเอกสาร Word โดยใช้ Aspose.Words for .NET ได้อย่างไร
ตอบ: หากต้องการสร้างตารางที่มีคอลัมน์ในเอกสาร Word โดยใช้ Aspose.Words สำหรับ .NET คุณสามารถใช้DocumentBuilder
วัตถุเพื่อแทรกเซลล์และเนื้อหาลงในตาราง นี่คือโค้ดตัวอย่าง:
builder. StartTable();
builder. InsertCell();
builder.Write("Contents of cell 1 of column 1");
builder. InsertCell();
builder.Write("Contents of cell 2 of column 2");
builder. EndRow();
builder. InsertCell();
builder.Write("Contents of cell 1 of column 2");
builder. InsertCell();
builder.Write("Contents of cell 2 of column 2");
builder. EndRow();
builder. EndTable();
ถาม: จะบุ๊กมาร์กคอลัมน์ตารางโดยใช้ Aspose.Words สำหรับ .NET ได้อย่างไร
ตอบ: หากต้องการสร้างบุ๊กมาร์กบนคอลัมน์ตารางโดยใช้ Aspose.Words สำหรับ .NET คุณสามารถใช้ไฟล์StartBookmark
วิธีการของDocumentBuilder
วัตถุเพื่อเริ่มบุ๊กมาร์กในคอลัมน์ตารางเฉพาะ นี่คือโค้ดตัวอย่าง:
builder.StartBookmark("MyBookmark");
ถาม: จะเข้าถึงเนื้อหาคอลัมน์ตารางจากบุ๊กมาร์กโดยใช้ Aspose.Words สำหรับ .NET ได้อย่างไร
ตอบ: หากต้องการเข้าถึงเนื้อหาของคอลัมน์ตารางจากบุ๊กมาร์กโดยใช้ Aspose.Words สำหรับ .NET คุณสามารถวนซ้ำบุ๊กมาร์กทั้งหมดในเอกสาร ตรวจสอบว่าบุ๊กมาร์กเป็นคอลัมน์หรือไม่ และใช้ดัชนีของคอลัมน์เพื่อเข้าถึงเนื้อหาของ คอลัมน์นั้น นี่คือโค้ดตัวอย่าง:
foreach(Bookmark bookmark in doc.Range.Bookmarks)
{
if (bookmark.IsColumn)
{
if (bookmark.BookmarkStart.GetAncestor(NodeType.Row) is Row row && bookmark.FirstColumn < row.Cells.Count)
{
string content = row.Cells[bookmark.FirstColumn].GetText().TrimEnd(ControlChar.CellChar);
// ทำบางสิ่งกับเนื้อหาของคอลัมน์...
}
}
}
ถาม: มีการจำกัดจำนวนคอลัมน์ที่ฉันสามารถสร้างในตารางที่มีบุ๊กมาร์กคอลัมน์ได้หรือไม่
ตอบ: ไม่มีการจำกัดจำนวนคอลัมน์ที่คุณสามารถสร้างในตารางที่มีบุ๊กมาร์กคอลัมน์โดยใช้ Aspose.Words สำหรับ .NET ขีดจำกัดส่วนใหญ่ขึ้นอยู่กับทรัพยากรที่มีอยู่ในระบบของคุณและข้อกำหนดของรูปแบบไฟล์ Word ที่คุณใช้ อย่างไรก็ตาม ขอแนะนำว่าอย่าสร้างคอลัมน์จำนวนมากเกินไป เนื่องจากอาจส่งผลต่อประสิทธิภาพและความสามารถในการอ่านของเอกสารขั้นสุดท้ายได้