การทำงานกับเอกสารข้อความ

ในบทความนี้ เราจะเรียนรู้ว่าตัวเลือกใดบ้างที่มีประโยชน์สำหรับการทำงานกับเอกสารข้อความผ่าน Aspose.Words โปรดทราบว่านี่ไม่ใช่รายการตัวเลือกทั้งหมดที่มีอยู่ แต่เป็นเพียงตัวอย่างการทำงานกับตัวเลือกบางส่วนเท่านั้น

เพิ่มเครื่องหมายสองทิศทาง

คุณสามารถใช้คุณสมบัติ AddBidiMarks เพื่อระบุว่าจะเพิ่มเครื่องหมายสองทิศทางก่อนที่จะรัน BiDi แต่ละรายการหรือไม่ เมื่อส่งออกในรูปแบบข้อความธรรมดา Aspose.Words แทรกอักขระ Unicode ‘เครื่องหมายจากขวาไปซ้าย’ (U+200F) ก่อนการเรียกใช้แบบสองทิศทางแต่ละครั้งในข้อความ ตัวเลือกนี้สอดคล้องกับตัวเลือก “เพิ่มเครื่องหมายสองทิศทาง” ในกล่องโต้ตอบการแปลงไฟล์ MS Word เมื่อคุณส่งออกเป็นรูปแบบข้อความธรรมดา โปรดทราบว่าจะปรากฏในกล่องโต้ตอบเฉพาะเมื่อมีการเพิ่มภาษาแก้ไขภาษาอาหรับหรือฮีบรูใน MS Word เท่านั้น

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการใช้คุณสมบัติ AddBidiMarks ค่าเริ่มต้นของคุณสมบัตินี้คือ false:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(dataDir + "Input.docx");
TxtSaveOptions saveOptions = new TxtSaveOptions();
saveOptions.AddBidiMarks = true;
dataDir = dataDir + "Document.AddBidiMarks_out.txt";
doc.Save(dataDir, saveOptions);

รับรู้รายการระหว่างการโหลด TXT

Aspose.Words สามารถนำเข้ารายการของไฟล์ข้อความเป็นหมายเลขรายการหรือข้อความธรรมดาในรูปแบบออบเจ็กต์เอกสาร คุณสมบัติ DetectNumberingWithWhitespaces ช่วยให้ระบุวิธีการรับรู้รายการลำดับเลขเมื่อนำเข้าเอกสารจากรูปแบบข้อความธรรมดา:

  • หากตั้งค่าตัวเลือกนี้เป็น true ช่องว่างจะถูกใช้เป็นตัวคั่นหมายเลขรายการด้วย: อัลกอริธึมการรู้จำรายการสำหรับการกำหนดหมายเลขสไตล์อารบิก (1., 1.1.2.) จะใช้ทั้งสัญลักษณ์ช่องว่างและจุด ("")

  • หากตั้งค่าตัวเลือกนี้เป็น false อัลกอริธึมการรู้จำรายการจะตรวจจับย่อหน้าของรายการ เมื่อหมายเลขรายการลงท้ายด้วยจุด วงเล็บเหลี่ยมขวา หรือสัญลักษณ์สัญลักษณ์หัวข้อย่อย (เช่น “•”, “*”, “-” หรือ “o”)

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการใช้คุณสมบัตินี้:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
TxtLoadOptions loadOptions = new TxtLoadOptions();
loadOptions.DetectNumberingWithWhitespaces = false;
Document doc = new Document(dataDir + "LoadTxt.txt", loadOptions);
dataDir = dataDir + "DetectNumberingWithWhitespaces_out.docx";
doc.Save(dataDir);

จัดการช่องว่างนำหน้าและต่อท้ายระหว่างการโหลด TXT

คุณสามารถควบคุมวิธีการจัดการช่องว่างนำหน้าและต่อท้ายระหว่างการโหลดไฟล์ TXT ช่องว่างนำหน้าสามารถตัดแต่ง เก็บรักษา หรือแปลงเป็นการเยื้อง และช่องว่างต่อท้ายสามารถตัดแต่งหรือเก็บรักษาไว้ได้

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีตัดช่องว่างนำหน้าและต่อท้ายขณะนำเข้าไฟล์ TXT:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
TxtLoadOptions loadOptions = new TxtLoadOptions();
loadOptions.LeadingSpacesOptions = TxtLeadingSpacesOptions.Trim;
loadOptions.TrailingSpacesOptions = TxtTrailingSpacesOptions.Trim;
Document doc = new Document(dataDir + "LoadTxt.txt", loadOptions);
dataDir = dataDir + "HandleSpacesOptions_out.docx";
doc.Save(dataDir);

ตรวจจับทิศทางข้อความของเอกสาร

Aspose.Words จัดเตรียมคุณสมบัติ DocumentDirection ในคลาส TxtLoadOptions เพื่อตรวจจับทิศทางของข้อความ (RTL / LTR) ในเอกสาร คุณสมบัตินี้ตั้งค่าหรือรับทิศทางข้อความเอกสารที่ระบุในการแจงนับ DocumentDirection ค่าเริ่มต้นจะเหลืออยู่ที่ right

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตรวจสอบทิศทางข้อความของเอกสารขณะนำเข้าไฟล์ TXT:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
TxtLoadOptions loadOptions = new TxtLoadOptions();
loadOptions.DocumentDirection = DocumentDirection.Auto;
Document doc = new Document(dataDir + "arabic.txt", loadOptions);
Paragraph paragraph = doc.FirstSection.Body.FirstParagraph;
Console.WriteLine(paragraph.ParagraphFormat.Bidi);
dataDir = dataDir + "DocumentDirection_out.docx";
doc.Save(dataDir);

ส่งออกส่วนหัวและส่วนท้ายในเอาต์พุต TXT

หากคุณต้องการส่งออกส่วนหัวและส่วนท้ายในเอกสาร TXT เอาต์พุต คุณสามารถใช้คุณสมบัติ ExportHeadersFootersMode ได้ คุณสมบัตินี้ระบุวิธีการส่งออกส่วนหัวและส่วนท้ายเป็นรูปแบบข้อความธรรมดา

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งออกส่วนหัวและส่วนท้ายเป็นรูปแบบข้อความธรรมดา:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document(dataDir + "TxtExportHeadersFootersMode.docx");
TxtSaveOptions options = new TxtSaveOptions();
options.SaveFormat = SaveFormat.Text;
// All headers and footers are placed at the very end of the output document.
options.ExportHeadersFootersMode = TxtExportHeadersFootersMode.AllAtEnd;
doc.Save(dataDir + "outputFileNameA.txt", options);
// Only primary headers and footers are exported at the beginning and end of each section.
options.ExportHeadersFootersMode = TxtExportHeadersFootersMode.PrimaryOnly;
doc.Save(dataDir + "outputFileNameB.txt", options);
// No headers and footers are exported.
options.ExportHeadersFootersMode = TxtExportHeadersFootersMode.None;
doc.Save(dataDir + "outputFileNameC.txt", options);

ส่งออกการเยื้องรายการในเอาต์พุต TXT

Aspose.Words เปิดตัวคลาส TxtListIndentation ที่ช่วยให้ระบุวิธีการเยื้องระดับรายการขณะส่งออกเป็นรูปแบบข้อความธรรมดา ในขณะที่ทำงานกับ TxtSaveOption คุณสมบัติ ListIndentation มีไว้เพื่อระบุอักขระที่จะใช้สำหรับการเยื้องระดับรายการและการนับโดยระบุจำนวนอักขระที่จะใช้เป็นการเยื้องต่อหนึ่งระดับรายการ

ค่าเริ่มต้นสำหรับคุณสมบัติอักขระคือ ‘\0’ ซึ่งบ่งชี้ว่าไม่มีการเยื้อง สำหรับคุณสมบัติการนับ ค่าเริ่มต้นคือ 0 ซึ่งหมายถึงไม่มีการเยื้อง

การใช้อักขระแท็บ

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งออกระดับรายการโดยใช้อักขระแท็บ:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document("input_document");
TxtSaveOptions options = new TxtSaveOptions();
options.ListIndentation.Count = 1;
options.ListIndentation.Character = '\t';
doc.Save(dataDir + "output.txt", options);

การใช้อักขระอวกาศ

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งออกระดับรายการโดยใช้อักขระเว้นวรรค:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc = new Document("input_document");
TxtSaveOptions options = new TxtSaveOptions();
options.ListIndentation.Count = 3;
options.ListIndentation.Character = ' ';
doc.Save(dataDir + "output.txt", options);

การใช้การเยื้องเริ่มต้น

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการส่งออกระดับรายการโดยใช้การเยื้องเริ่มต้น:

// For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-.NET
Document doc1 = new Document("input_document");
doc1.Save(dataDir + "output1.txt");
Document doc2 = new Document("input_document");
TxtSaveOptions options = new TxtSaveOptions();
doc2.Save(dataDir + "output2.txt", options);