ใช้การจัดรูปแบบ

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

Aspose.Wordsให้รวยAPIเพื่อดึงและนำไปใช้การจัดรูปแบบกับตาราง คุณสามารถใช้โหนดTable,RowFormatและCellFormatเพื่อตั้งค่าการจัดรูปแบบ.

ในบทความนี้เราจะพูดถึงวิธีใช้การจัดรูปแบบกับโหนดตารางที่แตกต่างกันและการตั้งค่าการจัดรูปแบบตารางAspose.Wordsสนับสนุน.

ใช้การจัดรูปแบบกับโหนดที่แตกต่างกัน

ในส่วนนี้เราจะดูที่การใช้การจัดรูปแบบไปยังโหนดตารางต่างๆ.

การจัดรูปแบบระดับตาราง

หากต้องการจัดรูปแบบตาราง คุณสามารถใช้คุณสมบัติที่มีอยู่บนโหนด Table ที่สอดคล้องกันโดยใช้คลาส Table, PreferredWidth และ TableCollection.

รูปภาพด้านล่างแสดงคุณลักษณะการจัดรูปแบบTableในMicrosoft Wordและคุณสมบัติที่สอดคล้องกันในAspose.Words.

formattin-features-table-level-aspose-words-cpp

formatting-table-options-aspose-words-cpp

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

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการสร้างตารางที่มีเส้นขอบทั้งหมดที่เปิดใช้งาน(ตาราง):

การจัดรูปแบบระดับแถว

ระดับแถว

รูปภาพด้านล่างแสดงคุณลักษณะการจัดรูปแบบRowในMicrosoft Wordและคุณสมบัติที่สอดคล้องกันในAspose.Words.

formatting-row-level-aspose-words-cpp

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการปรับเปลี่ยนการจัดรูปแบบแถวตาราง:

การจัดรูปแบบระดับเซลล์

การจัดรูปแบบระดับเซลล์จะถูกควบคุมโดยCell,CellFormatและCellCollectionคลาส.

รูปภาพด้านล่างแสดงคุณลักษณะการจัดรูปแบบCellในMicrosoft Wordและคุณสมบัติที่สอดคล้องกันในAspose.Words.

formatting-cell-level-aspose-words-cpp

auto-formatting-cell-level-aspose-words-cpp

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการปรับเปลี่ยนการจัดรูปแบบของเซลล์ตาราง:

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการตั้งค่าจำนวนของพื้นที่(ในจุด)เพื่อเพิ่มไปทางซ้าย/บน/ขวา/ล่างข:

ระบุความสูงแถว

วิธีที่ง่ายที่สุดในการตั้งค่าความสูงของแถวคือใช้DocumentBuilder การใช้คุณสมบัติที่เหมาะสมRowFormatคุณสามารถตั้งค่าความสูงเริ่มต้นหรือใช้ความสูงที่แตกต่างกัน.

ในAspose.Wordsความสูงของแถวตารางจะถูกควบคุมโดย:

  • คุณสมบัติความสูงของแถว-Height
  • คุณสมบัติกฎความสูงของแถวที่กำหนด-HeightRule

ในเวลาเดียวกันความสูงที่แตกต่างกันสามารถตั้งค่าสำหรับแต่ละแถว-นี้ช่วยให้คุณสามารถ.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการสร้างตารางที่ประกอบด้วยเซลล์เดียวและใช้การจัดรูปแ:

การระบุตารางและความกว้างของเซลล์

ตารางในเอกสารMicrosoft Wordมีหลายวิธีในการปรับขนาดตารางและแต่ละเซลล์ คุณสมบัติเหล่านี้อนุญาตให้ควบคุมลักษณะและพฤติกรรมของตารางดังนั้นAspose.Wordsสนับสนุนพฤติกรรมของตารางเช่นเดียวกับในMicrosoft Word.

มันเป็นสิ่งสำคัญที่จะรู้ว่าองค์ประกอบของตารางมีคุณสมบัติที่แตกต่างกันหลายอย่างที่มีผลต่อวิธีการคำนวณความกว้างของตารางโดยรวมเช่นเดียวกับแต่ละเซลล์มีการคำนวณ:

  • ความกว้างที่ต้องการบนโต๊ะ
  • ความกว้างที่ต้องการในแต่ละเซลล์
  • การอนุญาตให้พอดีอัตโนมัติบนโต๊ะ

บทความนี้อธิบายวิธีการทำงานของคุณสมบัติการคำนวณความกว้างของตารางต่างๆและวิธี นี่มัน ประโยชน์อย่างยิ่งที่จะรู้ว่าในกรณีดังกล่าวที่รูปแบบตารางไม่ปรากฏตามที่คาดไว้.

วิธีการใช้ความกว้างที่ต้องการ

ความกว้างที่ต้องการของตารางหรือแต่ละเซลล์ถูกกำหนดผ่านคุณสมบัติความกว้างที่ต้อง ความกว้างที่ต้องการสามารถระบุได้สำหรับตารางทั้งหมดหรือสำหรับแต่ละเซลล์ ในบางสถานการณ์มันอาจจะไม่สามารถที่จะพอดีกับความกว้างนี้ตรงแต่ความกว้างที่แท้จริ.

ชนิดความกว้างและค่าที่ต้องการที่เหมาะสมจะถูกตั้งค่าโดยใช้วิธีการของคลาสของPreferredWidth:

  • วิธีการAutoเพื่อระบุอัตโนมัติหรือ"ไม่มีความกว้างที่ต้องการ"
  • วิธีการFromPercentเพื่อระบุเปอร์เซ็นต์ความกว้าง
  • วิธีการFromPointsเพื่อระบุความกว้างของจุด

รูปภาพด้านล่างแสดงตัวแทนของpreferred width setting featuresในMicrosoft Wordและคุณสมบัติที่สอดคล้องกันในAspose.Words.

formatting-table-properties-aspose-words-cpp

ตัวอย่างของวิธีใช้ตัวเลือกเหล่านี้กับตารางจริงในเอกสารสามารถเห็นได้ในภาพด้านล่า.

todo:image_alt_text

ระบุตารางที่ต้องการหรือความกว้างของเซลล์

ในAspose.Wordsจะมีการตั้งค่าความกว้างของตารางและเซลล์โดยใช้คุณสมบัติTable.PreferredWidthและคุณสมบัติCellFormat.PreferredWidthพร้อมด้วยตัวเลือกในการแจงนับPreferredWidthType:

  • Autoซึ่งเทียบเท่ากับชุดความกว้างที่ต้องการ
  • Percentซึ่งเหมาะกับองค์ประกอบเมื่อเทียบกับพื้นที่ว่างในหน้าต่างหรือขนาดคอนเทนเนอร์และคำนวณค่าใหม่เมื่อความกว้างที่มีอยู่มีการเปลี่ยนแปลง
  • Pointsซึ่งสอดคล้องกับองค์ประกอบของความกว้างที่ระบุในจุด

การใช้คุณสมบัติTable.PreferredWidthจะปรับความกว้างที่ต้องการเมื่อเทียบกับคอนเทนเนอร์ได้แก่เพจคอลัมน์ข้.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการตั้งค่าตารางให้พอดีกับอัตโนมัติ 50%ของความกว้างของหน้า:

การใช้คุณสมบัติCellFormat.PreferredWidthบนเซลล์ที่กำหนดจะปรับความกว้างที่ต้องการ.

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

ค้นหาประเภทความกว้างและค่าที่ต้องการ

คุณสามารถใช้คุณสมบัติTypeและValueเพื่อค้นหารายละเอียดความกว้างที่ต้องการของตารางหรือเซลล์ที่ต้องการ.

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการดึงชนิดความกว้างที่ต้องการของเซลล์ตาราง:

วิธีการตั้งค่าพอดีอัตโนมัติ

คุณสมบัติAllowAutoFitช่วยให้เซลล์ในตารางเติบโตและหดตัวตามเกณฑ์ที่เลือก ตัวอย่างเช่นคุณสามารถใช้ตัวเลือกAutoFit to Windowเพื่อให้พอดีกับตารางความกว้างของหน้าและตัวเลือกAutoFit to Contentเพื่ออนุญาตให้แต่ละเซลล์เติบโตหรือหดตัวตามเนื้อหา.

โดยค่าเริ่มต้นAspose.Wordsแทรกตารางใหม่โดยใช้AutoFit to Window ตารางจะมีขนาดตามความกว้างของหน้าเว็บที่มีอยู่ เมื่อต้องการปรับขนาดตารางคุณสามารถเรียกวิธีการAutoFit วิธีนี้ยอมรับการแจงนับAutoFitBehaviorที่ระบุประเภทของการปรับพอดีอัตโนมัติถูกนำไปใช้กับตาราง.

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

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

AutoFitตารางไปยังหน้าต่าง

เมื่อปรับอัตโนมัติไปยังหน้าต่างถูกนำไปใช้กับตาราง,การดำเนินการต่อไปนี้จะดำเนินการจริงอยู่เบื้องหลัง:

  1. คุณสมบัติTable.AllowAutoFitถูกเปิดใช้งานเพื่อปรับขนาดคอลัมน์โดยอัตโนมัติเพื่อให้พอดีกับเนื้อหาที่มีอยู่โดยใช้ค่าTable.PreferredWidth100%
  2. CellFormat.PreferredWidthจะถูกลบออกจากเซลล์ทั้งหมดของตาราง
  3. ความกว้างของคอลัมน์จะถูกคำนวณใหม่สำหรับเนื้อหาของตารางปัจจุบัน–ผลลัพธ์ที่ได้คือตาร
  4. ความกว้างของคอลัมน์ในตารางจะเปลี่ยนแปลงโดยอัตโนมัติเมื่อผู้ใช้แก้ไขข้อความ

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

AutoFitตารางเนื้อหา

เมื่อตารางถูกติดตั้งโดยอัตโนมัติเนื้อหา,ขั้นตอนต่อไปนี้จะดำเนินการจริงเบื้องหลัง:

  1. คุณสมบัติTable.AllowAutoFitถูกเปิดใช้งานเพื่อปรับขนาดแต่ละเซลล์ตามเนื้อหาโดยอัตโนมัติ

  2. ความกว้างตารางที่ต้องการจะถูกลบออกจากTable.PreferredWidth,CellFormat.PreferredWidthจะถูกลบออกสำหรับแต่ละเซลล์ตาราง

  3. ความกว้างของคอลัมน์จะถูกคำนวณใหม่สำหรับเนื้อหาของตารางปัจจุบัน–ผลลัพธ์สุดท้ายคือต

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

ปิดการใช้งานAutoFitในตารางและใช้ความกว้างของคอลัมน์คงที่

ถ้าตารางมีการปิดใช้งานการติดตั้งอัตโนมัติและความกว้างคอลัมน์คงที่ถูกใช้แทนขั้นตอนต่:

  1. Table.AllowAutoFitคุณสมบัติถูกปิดใช้งานดังนั้นคอลัมน์จะไม่เติบโตหรือหดตัวลงในเนื้อหา
  2. ความกว้างที่ต้องการของตารางทั้งหมดจะถูกลบออกจากTable.PreferredWidth,CellFormat.PreferredWidthจะถูกลบออกจากเซลล์ตารางทั้งหมด
  3. ผลลัพธ์สุดท้ายคือตารางที่มีความกว้างของคอลัมน์จะถูกกำหนดโดยคุณสมบัติCellFormat.Widthและคอลัมน์ที่ไ

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

ลำดับความสำคัญเมื่อคำนวณความกว้างของเซลล์

Aspose.Wordsอนุญาตให้ผู้ใช้กำหนดความกว้างของตารางหรือเซลล์ผ่านหลายออบเจกต์รวมถึงCellFormat–คุณสมบัติWidthส่วนใหญ่จะเหลือจากเวอร์ชันก่อนหน้าแต่ก็ยังมีประโยชน์สำหรับการลดความกว้างของเซลล์.

สิ่งสำคัญคือต้องรู้ว่าคุณสมบัติCellFormat.Widthทำงานแตกต่างกันขึ้นอยู่กับคุณสมบัติความกว้างอื่นที่มีอยู่ในต.

Aspose.Wordsใช้ลำดับต่อไปนี้สำหรับการคำนวณความกว้างของเซลล์:

สั่งซื้อ ทรัพย์สิน การบรรจุ
AllowAutoFitถูกกำหนด ถ้าAutoFitถูกเปิดใช้งาน:
-ตารางอาจเติบโตที่ผ่านมาความกว้างที่ต้องการเพื่อรองรับเนื้อหา-มันมักจะไม่หดตัวต่ำกว่
-การเปลี่ยนแปลงค่าCellFormat.Widthจะถูกละเว้นและเซลล์จะพอดีกับเนื้อหาแทน
PreferredWidthTypeมีค่าPointsหรือPercent CellFormat.Widthถูกละเว้น
PreferredWidthTypeมีค่าAuto ค่าจากCellFormat.Widthถูกคัดลอกและกลายเป็นความกว้างที่ต้องการของเซลล์(ในจุด)

อนุญาตให้ระยะห่างระหว่างเซลล์

คุณสามารถรับหรือตั้งค่าช่องว่างเพิ่มเติมระหว่างเซลล์ตารางที่คล้ายกับตัวเลือก"ระยะห่างของเซลล์"ในMicrosoft Word นี้สามารถทำได้โดยใช้คุณสมบัติAllowCellSpacing.

ตัวอย่างของวิธีใช้ตัวเลือกเหล่านี้กับตารางจริงในเอกสารสามารถเห็นได้ในภาพด้านล่า.

formatting-spacing-between-cells-aspose-words-cpp

ตัวอย่างรหัสต่อไปนี้แสดงวิธีการตั้งระยะห่างระหว่างเซลล์:

ใช้เส้นขอบและการแรเงา

เส้นขอบและการแรเงาสามารถนำไปใช้กับตารางทั้งหมดโดยใช้Table.SetBorder,Table.SetBordersและTable.SetShadingหรือเฉพาะกับเซลล์ที่เฉพาะเจาะจงโดยใช้CellFormat.BordersและCellFormat.Shading นอกจากนี้เส้นขอบแถวสามารถตั้งค่าได้โดยใช้RowFormat.Bordersแต่ไม่สามารถใช้การแรเงาด้วยวิธีนี้ได้.

รูปภาพด้านล่างแสดงการตั้งค่าเส้นขอบและเงาในMicrosoft Wordและคุณสมบัติที่สอดคล้องกันในAspose.Words.

formatting-border-line-aspose-words-cpp

formatting-cell-color-aspose-words-cpp

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