สร้างไฟล์ OneNote ใน C# 2

Aspose.Note for .NET คือ API การจัดการเอกสาร OneNote ที่มีคุณลักษณะหลากหลายซึ่งช่วยให้คุณสร้าง อ่าน และแปลงเอกสาร OneNote โดยทางโปรแกรมโดยใช้ C# หรือ VB.NET ใน บทความก่อนหน้า เราได้พูดถึงวิธีใช้ Aspose.Note for .NET เพื่อแปลง อ่าน และแยกวิเคราะห์เอกสาร OneNote วันนี้เราจะมาดูวิธีสร้างเอกสาร OneNote ตั้งแต่เริ่มต้นโดยใช้ C#

MS OneNote ให้วิธีการจัดระเบียบและจัดการข้อมูลในรูปแบบของบันทึกดิจิทัล (.ONE) หน้าในเอกสาร OneNote ใช้เพื่อบรรจุเนื้อหาที่ผู้ใช้กำหนด ซึ่งอาจประกอบด้วยข้อความ ตาราง รูปภาพ รายการ และอื่นๆ ในบทความนี้ เราจะครอบคลุมลักษณะพื้นฐานทั้งหมดของการสร้างหน้าและเนื้อหาในเอกสาร OneNote .

สร้างเอกสาร OneNote (.ONE) โดยใช้ C#

เริ่มต้นด้วยการสร้างเอกสาร OneNote เปล่าที่มีชื่อหน้าเท่านั้น ต่อไปนี้เป็นขั้นตอนในการสร้างเอกสาร OneNote ด้วยหน้าว่างและบันทึกเป็นไฟล์ .one

  • สร้างอินสแตนซ์ของคลาส Document
  • สร้างหน้าใหม่โดยเริ่มต้นวัตถุหน้าด้วยวัตถุของคลาสเอกสาร
  • ตั้งชื่อหน้าโดยใช้คุณสมบัติ Page.Title
  • โทร Document.AppendChild() วิธีการและส่งวัตถุหน้า
  • สุดท้าย บันทึกเอกสาร OneNote โดยใช้วิธี Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างเอกสาร OneNote เปล่าโดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_LoadingAndSaving();

// สร้างวัตถุของคลาส Document
Document doc = new Aspose.Note.Document();
// เริ่มต้นวัตถุคลาสหน้า
Aspose.Note.Page page = new Aspose.Note.Page(doc);

// สไตล์เริ่มต้นสำหรับข้อความทั้งหมดในเอกสาร
ParagraphStyle textStyle = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
// ตั้งค่าคุณสมบัติชื่อหน้า
page.Title = new Title(doc)
{
    TitleText = new RichText(doc) { Text = "Title text.", ParagraphStyle = textStyle },
    TitleDate = new RichText(doc) { Text = new DateTime(2011, 11, 11).ToString("D", CultureInfo.InvariantCulture), ParagraphStyle = textStyle },
    TitleTime = new RichText(doc) { Text = "12:34", ParagraphStyle = textStyle }
};
// ต่อท้ายโหนดหน้าในเอกสาร
doc.AppendChildLast(page);

dataDir = dataDir + "CreateDocWithPageTitle_out.one";
// บันทึกเอกสาร OneNote
doc.Save(dataDir);

เพิ่มหน้าไปยังเอกสาร OneNote โดยใช้ C#

ในส่วนนี้ เราจะก้าวไปข้างหน้าหนึ่งก้าวและเพิ่มข้อความไปยังหน้าในเอกสาร OneNote หน้าในเอกสาร OneNote สามารถเป็นหน้าหลักหรือหน้าย่อยก็ได้ ตัวอย่างเช่น คุณกำลังสร้างรายงานประจำปีซึ่งมีส่วนย่อยเพิ่มเติมสำหรับรายงานรายเดือน ในกรณีเช่นนี้ คุณสามารถใส่คำอธิบายของรายงานในหน้าหลักและรายงานประจำเดือนในหน้าย่อย ในเอกสาร OneNote สามารถจัดการได้โดยใช้ระดับหน้า

ต่อไปนี้เป็นขั้นตอนในการสร้างหน้าในเอกสาร OneNote

  • สร้างเอกสาร OneNote ใหม่โดยใช้คลาสเอกสาร
  • สร้างหน้าใหม่สำหรับเอกสารและตั้งค่าระดับโดยใช้คลาสหน้า
  • ใช้คลาส Outline และ OutlineElement เพื่อสร้างโน้ต
  • เพิ่มบันทึกไปยังหน้าต่างๆ โดยใช้เมธอด Page.AppendChildLast()
  • เพิ่มหน้าในเอกสาร OneNote โดยใช้วิธี Document.AppendChildLast()
  • บันทึกเอกสารโดยใช้เมธอด Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีสร้างและเพิ่มหน้าในเอกสาร OneNote โดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_Pages();

// สร้างวัตถุของคลาส Document
Document doc = new Document();
// เริ่มต้นวัตถุคลาสหน้าและตั้งค่าระดับ
Aspose.Note.Page page1 = new Aspose.Note.Page(doc) { Level = 1 };
// เริ่มต้นวัตถุคลาสหน้าและตั้งค่าระดับ
Aspose.Note.Page page2 = new Aspose.Note.Page(doc) { Level = 2 };
// เริ่มต้นวัตถุคลาสหน้าและตั้งค่าระดับ
Aspose.Note.Page page3 = new Aspose.Note.Page(doc) { Level = 1 };

/*---------- Adding nodes to first Page ----------*/
Outline outline = new Outline(doc);
OutlineElement outlineElem = new OutlineElement(doc);
ParagraphStyle textStyle = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
RichText text = new RichText(doc) { Text = "First page.", ParagraphStyle = textStyle };
outlineElem.AppendChildLast(text);
outline.AppendChildLast(outlineElem);
page1.AppendChildLast(outline);

/*---------- Adding nodes to second Page ----------*/
var outline2 = new Outline(doc);
var outlineElem2 = new OutlineElement(doc);
var textStyle2 = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
var text2 = new RichText(doc) { Text = "Second page.", ParagraphStyle = textStyle2 };
outlineElem2.AppendChildLast(text2);
outline2.AppendChildLast(outlineElem2);
page2.AppendChildLast(outline2);

/*---------- Adding nodes to third Page ----------*/
var outline3 = new Outline(doc);
var outlineElem3 = new OutlineElement(doc);
var textStyle3 = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
var text3 = new RichText(doc) { Text = "Third page.", ParagraphStyle = textStyle3 };
outlineElem3.AppendChildLast(text3);
outline3.AppendChildLast(outlineElem3);
page3.AppendChildLast(outline3);

/*---------- Add pages to the OneNote Document ----------*/
doc.AppendChildLast(page1);
doc.AppendChildLast(page2);
doc.AppendChildLast(page3);

dataDir = dataDir + "CreateDocWithRootAndSubPages_out.one";
// บันทึกเอกสาร OneNote
doc.Save(dataDir);

แทรกรูปภาพลงในเอกสาร OneNote โดยใช้ C#

คุณยังสามารถแทรกรูปภาพไปยังหน้า OneNote ต่อไปนี้เป็นขั้นตอนในการสร้างเอกสาร OneNote ที่มีรูปภาพ

  • สร้างอินสแตนซ์ของคลาสเอกสารสำหรับเอกสาร OneNote ใหม่
  • ใช้คลาสหน้าเพื่อสร้างหน้าใหม่สำหรับเอกสาร
  • สร้างอินสแตนซ์ใหม่ของคลาส Image และเริ่มต้นด้วยเส้นทางของรูปภาพ
  • เพิ่มรูปภาพลงในหน้าโดยใช้เมธอด OutlineElement.AppendChildLast()
  • เพิ่มหน้าเอกสารโดยใช้เมธอด Document.AppendChildLast()
  • บันทึกเอกสาร OneNote

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกรูปภาพลงในเอกสาร OneNote โดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_Images();

// สร้างวัตถุของคลาส Document
Document doc = new Document();
// เริ่มต้นวัตถุคลาสเพจ
Aspose.Note.Page page = new Aspose.Note.Page(doc);
// เริ่มต้นวัตถุคลาส Outline และตั้งค่าคุณสมบัติออฟเซ็ต
Outline outline = new Outline(doc) { VerticalOffset = 0, HorizontalOffset = 0 };
// เริ่มต้นวัตถุคลาส OutlineElement
OutlineElement outlineElem = new OutlineElement(doc);
// โหลดรูปภาพตามเส้นทางของไฟล์
Aspose.Note.Image image = new Aspose.Note.Image(doc, dataDir + "image.jpg");
// ตั้งค่าการจัดตำแหน่งภาพ
image.Alignment = HorizontalAlignment.Right;
// ใส่รูปภาพ
outlineElem.AppendChildLast(image);
// เพิ่มองค์ประกอบโครงร่าง
outline.AppendChildLast(outlineElem);
// เพิ่มโหนดเค้าร่าง
page.AppendChildLast(outline);
// เพิ่มโหนดหน้า
doc.AppendChildLast(page);

dataDir = dataDir + "BuildDocAndInsertImage_out.one";
// บันทึกเอกสาร OneNote
doc.Save(dataDir);

เพิ่มตารางลงในเอกสาร OneNote โดยใช้ C#

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

  • สร้างเอกสาร OneNote ใหม่โดยใช้คลาสเอกสาร
  • สร้างหน้าใหม่โดยใช้คลาสหน้า
  • เพิ่มแถวตารางและเซลล์ตารางใหม่โดยใช้คลาส TableRow และ TableCell ตามลำดับ
  • แทรกองค์ประกอบลงในเซลล์ตารางโดยใช้เมธอด TableCell.AppendChildLast
  • เพิ่มเซลล์ในแถวของตารางโดยใช้เมธอด TableRow.AppendChildLast()
  • สร้างอินสแตนซ์ของคลาส Table และเพิ่มแถวของตารางลงไป
  • เพิ่มตารางลงในเพจโดยใช้คลาส OutlineElement และ Outline
  • เพิ่มหน้าในเอกสารและบันทึกเอกสารโดยใช้เมธอด Document.Save()

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มตารางในเอกสาร OneNote โดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_Tables();

// สร้างวัตถุของคลาส Document
Document doc = new Document();
// เริ่มต้นวัตถุคลาสหน้า
Aspose.Note.Page page = new Aspose.Note.Page(doc);

// เริ่มต้นวัตถุคลาส TableRow
TableRow row1 = new TableRow(doc);
// เริ่มต้นวัตถุคลาส TableCell
TableCell cell11 = new TableCell(doc);
TableCell cell12 = new TableCell(doc);
TableCell cell13 = new TableCell(doc);

// ผนวกองค์ประกอบเค้าร่างในเซลล์ตาราง
cell11.AppendChildLast(GetOutlineElementWithText(doc, "cell_1.1"));
cell12.AppendChildLast(GetOutlineElementWithText(doc, "cell_1.2"));
cell13.AppendChildLast(GetOutlineElementWithText(doc, "cell_1.3"));
// เซลล์ตารางเป็นแถว
row1.AppendChildLast(cell11);
row1.AppendChildLast(cell12);
row1.AppendChildLast(cell13);

// เริ่มต้นวัตถุคลาส TableRow
TableRow row2 = new TableRow(doc);
// เริ่มต้นวัตถุคลาส TableCell
TableCell cell21 = new TableCell(doc);
TableCell cell22 = new TableCell(doc);
TableCell cell23 = new TableCell(doc);

// ผนวกองค์ประกอบเค้าร่างในเซลล์ตาราง
cell21.AppendChildLast(GetOutlineElementWithText(doc, "cell_2.1"));
cell22.AppendChildLast(GetOutlineElementWithText(doc, "cell_2.2"));
cell23.AppendChildLast(GetOutlineElementWithText(doc, "cell_2.3"));

// ต่อท้ายเซลล์ตารางในแถว
row2.AppendChildLast(cell21);
row2.AppendChildLast(cell22);
row2.AppendChildLast(cell23);

// เริ่มต้นวัตถุคลาสตารางและกำหนดความกว้างของคอลัมน์
Table table = new Table(doc)
{
    IsBordersVisible = true,
    Columns = { new TableColumn { Width = 200 }, new TableColumn { Width = 200 }, new TableColumn { Width = 200 } }
};
// ผนวกแถวของตารางเข้ากับตาราง
table.AppendChildLast(row1);
table.AppendChildLast(row2);

// เริ่มต้นวัตถุเค้าร่าง
Outline outline = new Outline(doc);
// เริ่มต้นวัตถุ OutlineElement
OutlineElement outlineElem = new OutlineElement(doc);
// เพิ่มตารางเพื่อร่างโหนดองค์ประกอบ
outlineElem.AppendChildLast(table);
// เพิ่มองค์ประกอบโครงร่างเพื่อร่าง
outline.AppendChildLast(outlineElem);
// เพิ่มเค้าร่างไปยังโหนดหน้า
page.AppendChildLast(outline);
// เพิ่มหน้าไปยังโหนดเอกสาร
doc.AppendChildLast(page);
dataDir = dataDir + "InsertTable_out.one";
doc.Save(dataDir);

แทรกแท็กในเอกสาร OneNote โดยใช้ C#

แท็กใช้เพื่อจัดหมวดหมู่หรือจัดลำดับความสำคัญของบันทึกย่อในเอกสาร OneNote คุณสามารถใช้แท็กกับข้อความหรือย่อหน้าเพื่อค้นหาหรือกรองบันทึกย่อที่เกี่ยวข้องได้อย่างรวดเร็ว ต่อไปนี้เป็นขั้นตอนในการสร้างและเพิ่มแท็กในเอกสาร OneNote

  • สร้างอินสแตนซ์ของคลาส Document
  • สร้างหน้าใหม่โดยใช้คลาสหน้า
  • เริ่มต้นวัตถุ Outline และ OutlineElement
  • สร้างวัตถุ RichText ใหม่และตั้งค่าข้อความและคุณสมบัติอื่นๆ
  • เพิ่มแท็กให้กับข้อความโดยใช้เมธอด RichText.Tags.Add()
  • ต่อท้ายข้อความในหน้า
  • เพิ่มหน้าลงในเอกสาร OneNote และบันทึก

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีเพิ่มแท็กให้กับข้อความในเอกสาร OneNote โดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_Tags();

// สร้างวัตถุของคลาส Document
Document doc = new Document();
// เริ่มต้นวัตถุคลาสเพจ
Aspose.Note.Page page = new Aspose.Note.Page(doc);
// เริ่มต้นวัตถุคลาส Outline
Outline outline = new Outline(doc);
// เริ่มต้นวัตถุคลาส OutlineElement
OutlineElement outlineElem = new OutlineElement(doc);
ParagraphStyle textStyle = new ParagraphStyle { FontColor = Color.Black, FontName = "Arial", FontSize = 10 };
RichText text = new RichText(doc) { Text = "OneNote text.", ParagraphStyle = textStyle };
text.Tags.Add(new NoteTag
{
    Icon = TagIcon.YellowStar,
});

// เพิ่มโหนดข้อความ
outlineElem.AppendChildLast(text);
// เพิ่มโหนดองค์ประกอบเค้าร่าง
outline.AppendChildLast(outlineElem);
// เพิ่มโหนดเค้าร่าง
page.AppendChildLast(outline);
// เพิ่มโหนดหน้า
doc.AppendChildLast(page);

dataDir = dataDir + "AddTextNodeWithTag_out.one";
// บันทึกเอกสาร OneNote
doc.Save(dataDir);

สุดท้าย แต่ไม่ท้ายสุด เรามาดูวิธีแทรกไฮเปอร์ลิงก์ไปยังเอกสาร OneNote โดยใช้ขั้นตอนต่อไปนี้

  • สร้างอินสแตนซ์ของคลาส Document
  • สร้างหน้าใหม่สำหรับเอกสารโดยใช้คลาสหน้า
  • กำหนดรูปแบบข้อความของไฮเปอร์ลิงก์และ URL โดยใช้คลาส TextStyle
  • สร้างอินสแตนซ์ของคลาส RichText เพิ่มข้อความและเริ่มต้นด้วยสไตล์ข้อความที่สร้างไว้ก่อนหน้านี้สำหรับไฮเปอร์ลิงก์
  • เพิ่มข้อความลงในหน้าของเอกสาร OneNote
  • บันทึกเอกสารเป็นไฟล์ .one

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกไฮเปอร์ลิงก์ไปยังเอกสาร OneNote โดยใช้ C#

// เส้นทางไปยังไดเร็กทอรีเอกสาร
string dataDir = RunExamples.GetDataDir_Tasks();

// สร้างวัตถุของคลาส Document
Document doc = new Document();
// เริ่มต้นวัตถุคลาสหน้า
Aspose.Note.Page page = new Aspose.Note.Page(doc);
// เริ่มต้นวัตถุระดับชื่อเรื่อง
Title title = new Title(doc);

ParagraphStyle defaultTextStyle = new ParagraphStyle
{
    FontName = "Arial",
    FontSize = 10,
    FontColor = SystemColors.WindowText
};
RichText titleText = new RichText(doc)
{
    Text = "Title!",
    ParagraphStyle = defaultTextStyle
};
Outline outline = new Outline(doc)
{
    MaxWidth = 200,
    MaxHeight = 200,
    VerticalOffset = 100,
    HorizontalOffset = 100
};
OutlineElement outlineElem = new OutlineElement(doc);
TextStyle textStyleRed = new TextStyle
{
    FontColor = Color.Red,
    FontName = "Arial",
    FontSize = 10,
    RunIndex = 8//this style will be applied to 0-7 characters.
};
TextStyle textStyleHyperlink = new TextStyle
{
    RunIndex = 17,//this style will be applied to 8-16 characters.
    IsHyperlink = true,
    HyperlinkAddress = "www.google.com"
};
RichText text = new RichText(doc)
{
    Text = "This is hyperlink. This text is not a hyperlink.",
    ParagraphStyle = defaultTextStyle,
    Styles = { textStyleRed, textStyleHyperlink }
};

title.TitleText = titleText;
page.Title = title;
outlineElem.AppendChildLast(text);
// เพิ่มองค์ประกอบโครงร่าง
outline.AppendChildLast(outlineElem);
// เพิ่มโหนดเค้าร่าง
page.AppendChildLast(outline);
// เพิ่มโหนดหน้า
doc.AppendChildLast(page);

dataDir = dataDir + "AddHyperlink_out.one";
// บันทึกเอกสาร OneNote
doc.Save(dataDir);

บทสรุป

ในบทความนี้ คุณได้เรียนรู้วิธีสร้างเอกสาร OneNote (.ONE) ตั้งแต่เริ่มต้นโดยใช้ C# นอกจากนี้ บทความนี้ยังกล่าวถึงวิธีการแทรกหน้า รูปภาพ ตาราง แท็ก และไฮเปอร์ลิงก์ไปยังเอกสาร OneNote โดยทางโปรแกรม คุณสามารถสำรวจคุณลักษณะที่น่าสนใจอื่นๆ ของ Aspose.Note for .NET โดยใช้ เอกสารประกอบ

บทความที่เกี่ยวข้อง