aspose.info
TH

RTF - รูปแบบ Rich Text

อัปเดตเมื่อ

ไฟล์ RTF คืออะไร??

Rich Text Format (RTF) นำเสนอและจัดทำเป็นเอกสารโดย Microsoft แสดงถึงวิธีการเข้ารหัสข้อความและกราฟิกที่จัดรูปแบบเพื่อใช้ภายในแอปพลิเคชัน รูปแบบนี้อำนวยความสะดวกในการแลกเปลี่ยนเอกสารข้ามแพลตฟอร์มกับผลิตภัณฑ์อื่นๆ ของ Microsoft ดังนั้นจึงตอบสนองวัตถุประสงค์ของการทำงานร่วมกัน ความสามารถนี้ทำให้เป็นมาตรฐานของการถ่ายโอนข้อมูลระหว่างซอฟต์แวร์ประมวลผลคำ ดังนั้น เนื้อหาจึงสามารถถ่ายโอนจากระบบปฏิบัติการหนึ่งไปยังอีกระบบปฏิบัติการหนึ่งได้โดยไม่สูญเสียการจัดรูปแบบเอกสาร Microsoft มีข้อกำหนดเฉพาะเกี่ยวกับรูปแบบไฟล์สำหรับสาธารณะ ดาวน์โหลด และสามารถอ้างอิงได้จากมุมมองของนักพัฒนา

ประวัติโดยย่อของรูปแบบไฟล์ RTF

รูปแบบไฟล์ RTF ได้รับการแก้ไขหลายครั้งตั้งแต่เผยแพร่ เวอร์ชันอย่างเป็นทางการสำหรับการอ่าน/เขียนได้รับการเผยแพร่โดยเป็นส่วนหนึ่งของ Microsoft Word 3.0 สำหรับ Macintosh พร้อมข้อกำหนดเวอร์ชัน 1.0 ข้อมูลจำเพาะรุ่นสุดท้าย 1.9.1 เผยแพร่โดย Microsoft ในเดือนมีนาคม 2551 ไม่มีการปรับปรุงเพิ่มเติมสำหรับข้อกำหนดหลังจากนี้ ในปัจจุบัน ระบบปฏิบัติการเกือบทั้งหมดมีแอปพลิเคชันที่มีคุณสมบัติหลากหลายมากขึ้น ซึ่งลด/กำจัดการใช้รูปแบบไฟล์ RTF

ข้อมูลจำเพาะรูปแบบไฟล์ RTF

RTF ทำหน้าที่เป็นมาตรฐานของการถ่ายโอนข้อมูลระหว่างซอฟต์แวร์ประมวลผลคำและการถ่ายโอนเนื้อหาจากระบบปฏิบัติการหนึ่งไปยังอีกระบบปฏิบัติการหนึ่ง สิ่งนี้ทำได้โดยใช้คำควบคุมที่ Microsoft Office Word แนะนำจนถึงปี 2550 ไฟล์ RTF มาตรฐานประกอบด้วย ASCII เพื่อแสดงข้อความที่มีรูปแบบและด้วยอักขระที่ไม่ใช่ ASCII ที่แปลงเป็นค่ารหัสที่เหมาะสม Word เวอร์ชันใหม่กว่าสามารถอ่านไฟล์ RTF ที่สร้างด้วยเวอร์ชันก่อนหน้าได้ ในขณะที่เวอร์ชันเก่าจะไม่สนใจคำควบคุมและกลุ่มที่ไม่เข้าใจ

ทำความเข้าใจพื้นฐานของ RTF

ไฟล์ RTF ใช้ข้อความธรรมดา ASCII แบบ 7 บิต ประกอบด้วย:

  • คำควบคุม
  • สัญลักษณ์ควบคุมและ
  • กลุ่ม

สิ่งเหล่านี้ทำหน้าที่เป็นหน่วยการสร้างสำหรับการแสดงข้อมูล RTF เป็นข้อความและการเข้ารหัสอักขระที่เข้าใจได้

คำควบคุม

สิ่งเหล่านี้แสดงถึงคำสั่งรูปแบบพิเศษที่ใช้เพื่อทำเครื่องหมายอักขระเพื่อแสดงและมีความยาวไม่เกิน 32 ตัวอักษร คำควบคุมถูกกำหนดโดย:

<ASCII Letter Sequence> //<//Delimiter//> //

คำควบคุมแต่ละคำจะคำนึงถึงขนาดตัวพิมพ์และเริ่มต้นด้วยเครื่องหมายแบ็กสแลช ลำดับตัวอักษร ASCII สามารถมีตัวอักษร ASCII (a ถึง z และ A ถึง Z) เดอะ ทำเครื่องหมายที่ส่วนท้ายของชื่อคำควบคุมและสามารถเป็นหนึ่งในสิ่งต่อไปนี้:

  • ช่องว่าง สิ่งนี้ทำหน้าที่เฉพาะเพื่อคั่นคำควบคุมและจะถูกละเว้นในการประมวลผลที่ตามมา
  • ตัวเลขหรือเครื่องหมายลบ ASCII ซึ่งระบุว่าพารามิเตอร์ตัวเลขเชื่อมโยงกับคำควบคุม ลำดับดิจิทัลที่ตามมาจะถูกคั่นด้วยอักขระใดๆ ที่ไม่ใช่หลัก ASCII (โดยทั่วไปคือคำควบคุมอื่นที่ขึ้นต้นด้วยเครื่องหมายแบ็กสแลช) พารามิเตอร์สามารถเป็นเลขทศนิยมที่เป็นบวกหรือลบ ช่วงของค่าสำหรับตัวเลขคือ –32768 ถึง 32767 ในนาม นั่นคือ จำนวนเต็ม 16 บิตแบบมีเครื่องหมาย คำควบคุมจำนวนเล็กน้อยใช้ค่าในช่วง‌ −2,147,483,648 ถึง 2,147,483,647 (จำนวนเต็มที่ลงนาม 32 บิต) คำควบคุมเหล่านี้รวมถึง \binN, \revdttmN//, \rsidN คำควบคุมที่เกี่ยวข้อง และคุณสมบัติของรูปภาพบางอย่าง เช่น \bliptagN ที่นี่ N หมายถึงพารามิเตอร์ที่เป็นตัวเลข ตัวแยกวิเคราะห์ RTF ต้องอนุญาตให้มีตัวเลขสูงสุด 10 หลักที่นำหน้าด้วยเครื่องหมายลบ ถ้าตัวคั่นเป็นช่องว่าง จะถูกละทิ้ง นั่นคือจะไม่รวมอยู่ในการประมวลผลที่ตามมา
  • อักขระใดๆ ที่ไม่ใช่ตัวอักษรหรือตัวเลข ในกรณีนี้ อักขระที่ใช้คั่นจะยุติคำควบคุมและไม่ได้เป็นส่วนหนึ่งของคำควบคุม เช่น เครื่องหมายแบ็กสแลช “\” ซึ่งหมายถึงคำควบคุมใหม่หรือสัญลักษณ์ควบคุมตามหลัง

สัญลักษณ์ควบคุม

สัญลักษณ์ควบคุมแสดงถึงเหตุการณ์พิเศษที่มีความหมายเฉพาะขึ้นอยู่กับเนื้อหา ประกอบด้วยเครื่องหมายแบ็กสแลชตามด้วยอักขระพิเศษ (อักขระที่ไม่ใช่ตัวอักษร) และไม่มีตัวคั่นใดๆ

กลุ่ม

กลุ่มสามารถประกอบด้วยข้อความ คำควบคุม หรือสัญลักษณ์ควบคุมที่อยู่ในวงเล็บปีกกา ({ }) วงเล็บปีกกาเปิด ({ ) ระบุจุดเริ่มต้นของกลุ่มและวงเล็บปีกกาปิด ( }) ระบุจุดสิ้นสุดของกลุ่ม แต่ละกลุ่มระบุข้อความที่ได้รับผลกระทบจากกลุ่มและแอตทริบิวต์ที่แตกต่างกันของข้อความนั้น

โครงสร้างไฟล์ RTF

ไฟล์ RTF มีไวยากรณ์มาตรฐานดังต่อไปนี้:

Rich Text Format (RTF) นำเสนอและจัดทำเป็นเอกสารโดย Microsoft แสดงถึงวิธีการเข้ารหัสข้อความและกราฟิกที่จัดรูปแบบเพื่อใช้ภายในแอปพลิเคชัน รูปแบบนี้อำนวยความสะดวกในการแลกเปลี่ยนเอกสารข้ามแพลตฟอร์มกับผลิตภัณฑ์อื่นๆ ของ Microsoft ดังนั้นจึงตอบสนองวัตถุประสงค์ของการทำงานร่วมกัน ความสามารถนี้ทำให้เป็นมาตรฐานของการถ่ายโอนข้อมูลระหว่างซอฟต์แวร์ประมวลผลคำ ดังนั้น เนื้อหาจึงสามารถถ่ายโอนจากระบบปฏิบัติการหนึ่งไปยังอีกระบบปฏิบัติการหนึ่งได้โดยไม่สูญเสียการจัดรูปแบบเอกสาร Microsoft มีข้อกำหนดเฉพาะเกี่ยวกับรูปแบบไฟล์สำหรับสาธารณะ ดาวน์โหลด และสามารถอ้างอิงได้จากมุมมองของนักพัฒนา

ส่วนหัว RTF

ส่วนหัว RTF มีการแสดงดังต่อไปนี้

ฟิลด์คำอธิบาย
<header>\rtf1\fbidis? <character set> <from> ? <deffont> <deflang> <fonttbl> ? <filetbl> ? <colortbl> ? <stylesheet> ? <stylerestrictions> ? <listtables> ? <revtbl> ? <rsidtable> ? <mathprops> ? <generator> ?

ตารางส่วนหัวต้องปรากฏในลำดับนี้หากมีอยู่ ไฟล์ RTF สามารถรวมกลุ่มแบบอักษร สไตล์ สีของหน้าจอ รูปภาพ เชิงอรรถ ความคิดเห็น (หมายเหตุประกอบ) ส่วนหัวและส่วนท้าย ข้อมูลสรุป ฟิลด์ บุ๊กมาร์ก เอกสาร- ส่วน- ย่อหน้า- และคุณสมบัติการจัดรูปแบบอักขระ คณิตศาสตร์ รูปภาพ และสิ่งของต่างๆ ถ้าฟอนต์ ไฟล์ สไตล์ สี เครื่องหมายแก้ไข และกลุ่มข้อมูลสรุปและคุณสมบัติการจัดรูปแบบเอกสารรวมอยู่ในไฟล์ จะต้องปรากฏในส่วนหัว RTF ซึ่งอยู่หน้าเนื้อหา RTF หากไม่ได้ใช้เนื้อหาของกลุ่มใดๆ ก็สามารถละเว้นกลุ่มนั้นได้ กลุ่มใดๆ ที่ใช้คุณสมบัติที่กำหนดในกลุ่มอื่นจะต้องปรากฏต่อจากกลุ่มที่กำหนดคุณสมบัติเหล่านั้น ตัวอย่างเช่น คุณสมบัติสีและฟอนต์ต้องนำหน้ากลุ่มสไตล์

เวอร์ชัน RTF

เอกสาร RTF ต้องขึ้นต้นด้วยอักขระหกตัวต่อไปนี้:

{\rtf1

โดยที่ 1 แสดงหมายเลขเวอร์ชัน RTF

ชุดตัวอักษร

หลังจาก {\rtf1 เอกสารควรประกาศชุดอักขระที่ใช้ วิธีประกาศชุดอักขระคือใช้คำสั่งใดคำสั่งหนึ่งต่อไปนี้

\ansi - เอกสารอยู่ในชุดอักขระ ANSI หรือที่เรียกว่า Code Page 1252 ซึ่งเป็นชุดอักขระปกติของ MSWindows

\mac - เอกสารอยู่ในชุดอักขระ MacAscii ซึ่งเป็นชุดอักขระตามปกติใน Mac OS เวอร์ชันเก่า (ก่อน 10)

\pc - เอกสารอยู่ในรหัส DOS หน้า 437 ซึ่งเป็นชุดอักขระเริ่มต้นสำหรับ MS-DOS คนพิมพ์ดีดที่มีความจำดีจะสังเกตว่านี่คือชุดอักขระที่ยังคงใช้สำหรับตีความรหัส “Alt numic” กล่าวคือ เมื่อคุณกด Alt ค้างไว้แล้วพิมพ์ “130” บนแป้นตัวเลข มันจะสร้าง é เนื่องจากอักขระ 130 ใน CP437 เป็น é นั่นเป็นเรื่องเกี่ยวกับการใช้งานเพียงอย่างเดียวที่ CP437 เห็นในปัจจุบัน

\pca - เอกสารนี้อยู่ใน DOS Code Page 850 หรือที่เรียกว่า MS-DOS Multilingual Code Page

คำสั่งแบบอักษร

นิยามชุดอักขระตามด้วยคำสั่ง \deffN กำหนดว่าหมายเลขแบบอักษร N เป็นแบบอักษรเริ่มต้นสำหรับเอกสารนี้ หมายเลขฟอนต์ N ถูกอ้างอิงจากตารางฟอนต์ คำสั่ง \deffN เป็นตัวเลือกทางเทคนิค แต่ควรมีไว้เพื่อความปลอดภัยในฐานะอารัมภบททั่วไป เช่น เลือกฟอนต์ 0 เป็นฟอนต์เริ่มต้น

{\rtf1\ansi\def0

ตารางแบบอักษร

ฟอนต์ทั้งหมดที่สามารถใช้ในเอกสารจะแสดงรายการในตารางฟอนต์ ซึ่งแต่ละฟอนต์จะแสดงด้วยหมายเลขฟอนต์ เอกสารต้องมีตารางแบบอักษร แม้ว่าบางโปรแกรมจะทำงานหากไม่มีสิ่งนั้นเช่นกัน

ไวยากรณ์สำหรับตารางแบบอักษรคือ {\fonttbl //…declarations//…} ซึ่งการประกาศแต่ละครั้งจะมีไวยากรณ์พื้นฐานดังนี้

{\fnumber\familycommand Fontname;}

ตารางแบบอักษรที่มีการประกาศสี่รายการมีดังนี้:

{\fonttbl
{\f0\froman Times;}
{\f1\fswiss Arial;}
{\f2\fmodern Courier New;}
}

ในเอกสารที่มีตารางแบบอักษร {\f2 stuff} จะพิมพ์ “stuff” ใน Courier New ไม่สามารถใช้ฟอนต์ในเอกสารได้จนกว่าจะแสดงอยู่ในตารางฟอนต์

จบเอกสาร

เอกสาร RTF ทุกฉบับต้องลงท้ายด้วย } เพื่อปิดกลุ่มที่เปิดโดย { ซึ่งเป็นอักขระตัวแรกในเอกสาร ไม่มีอะไรสามารถเป็นไปตามขั้นสุดท้าย } ยกเว้นการขึ้นบรรทัดใหม่

อ้างอิง

ดูเพิ่มเติม