เรามีความยินดีที่จะประกาศการเปิดตัว GroupDocs.Comparison for .NET 26.5 ซึ่งพร้อมให้ใช้งานตั้งแต่ พฤษภาคม 2026
เวอร์ชัน 26.5 ของ GroupDocs.Comparison มาพร้อมกับการปรับปรุงความแม่นยำในการเรนเดอร์ PDF, การอ่านผลการเปรียบเทียบ CSV และสเปรดชีตที่ดียิ่งขึ้น, ความสามารถใหม่ของ API สำหรับการจัดการ revision และเมตาดาต้าการเปลี่ยนแปลงของสเปรดชีต, รวมถึงโมเดลการจัดแพ็กเกจ NuGet ที่อัปเดตพร้อมการสนับสนุนหลายเฟรมเวิร์ก

การแก้ไขและการปรับปรุง

  • [Feature] การจัดแพ็กเกจ NuGet แบบหลายเฟรมเวิร์กและแพ็กเกจแยกตาม TFM (COMPARISONNET-4770)
  • [Enhancement] การเปรียบเทียบ PDF: ปรับปรุงความแม่นยำของการเรนเดอร์ย่อหน้าในโหมด Inline (COMPARISONNET-4751)
  • [Enhancement] ปรับปรุงผลการเปรียบเทียบสำหรับเอกสาร PDF ที่มีตาราง (COMPARISONNET-4763)
  • [Bug] แก้ไข ArgumentOutOfRangeException เมื่อเปรียบเทียบ PDF ที่มีตารางที่มีสไตล์ (COMPARISONNET-4762)
  • [Feature] รองรับการปล่อยทรัพยากรของสตรีมที่ส่งเข้ามาแบบเลือกได้ใน RevisionHandler (COMPARISONNET-4773)
  • [Enhancement] ปรับปรุงความอ่านง่ายของผลการเปรียบเทียบ CSV ด้วยเครื่องหมายข้อความ (COMPARISONNET-4769)
  • [Feature] ขยาย ChangeInfo ด้วยคุณสมบัติของสเปรดชีต (COMPARISONNET-4767)
  • [Bug] วิธี Compare โยนข้อยกเว้นเมื่อส่งออกเป็น HTML (COMPARISONNET-4764)

คุณสมบัติหลัก

การจัดแพ็กเกจ NuGet แบบหลายเฟรมเวิร์กและแพ็กเกจแยกตาม TFM

GroupDocs.Comparison ได้เปลี่ยนไปใช้โมเดลการจัดส่งแพ็กเกจ NuGet ที่ก้าวหน้าขึ้น ตอนนี้แพ็กเกจหลักรองรับ net462;net6.0;net8.0;net10.0 แทนที่การรองรับ net462;netstandard2.1 เดิม

นอกจากนี้ เพื่อให้ขนาดการดาวน์โหลดเล็กลง ยังมีการเผยแพร่แพ็กเกจ NuGet แยกตามเฟรมเวิร์กพร้อมกับแพ็กเกจหลัก เมื่อทำการติดตั้งแพ็กเกจที่เฉพาะเจาะจงต่อแพลตฟอร์ม จะดาวน์โหลดไบนารีที่ตรงกับเฟรมเวิร์กเป้าหมายของผู้ใช้เท่านั้น — ไม่รวมแอสเซมบลีที่ไม่ได้ใช้

แพ็กเกจ เฟรมเวิร์กเป้าหมาย
GroupDocs.Comparison net462;net6.0;net8.0;net10.0 (ทุกเฟรมเวิร์ก)
GroupDocs.Comparison.net462 .NET Framework 4.6.2
GroupDocs.Comparison.net6 .NET 6.0
GroupDocs.Comparison.net8 .NET 8.0
GroupDocs.Comparison.net10 .NET 10.0

หมายเหตุ: .NET Standard 2.1 ไม่ได้รับการสนับสนุนเป็นเป้าหมายแยกอีกต่อไป โปรเจกต์ที่เคยพึ่งพา netstandard2.1 ควรย้ายไปใช้หนึ่งใน TFM ที่สนับสนุนตามที่ระบุข้างต้น

รองรับการปล่อยทรัพยากรของสตรีมที่ส่งเข้ามาแบบเลือกได้ใน RevisionHandler

RevisionHandler ตอนนี้รับพารามิเตอร์ leaveOpen ที่ควบคุมว่าการสตรีมพื้นฐานจะถูกปล่อยทรัพยากรเมื่อ handler ถูกปล่อยหรือไม่ หากตั้งค่า leaveOpen เป็น true สตรีมจะยังคงเปิดอยู่หลังจาก RevisionHandler ถูกปล่อย ทำให้ผู้เรียกสามารถใช้งานต่อได้ ซึ่งเป็นประโยชน์ในกรณีที่วงจรชีวิตของสตรีมถูกจัดการจากภายนอก

using FileStream revisionFileStream = new FileStream("source.docx", FileMode.Open, FileAccess.ReadWrite);

using (RevisionHandler revisionHandler = new RevisionHandler(revisionFileStream, leaveOpen: true))
{
    List<RevisionInfo> revisionList = revisionHandler.GetRevisions();

    foreach (var rev in revisionList)
    {
        if (rev.Type == RevisionType.Deletion)
            rev.Action = RevisionAction.Accept;
    }

    ApplyRevisionOptions revisionChanges = new ApplyRevisionOptions { Changes = revisionList };
    revisionHandler.ApplyRevisionChanges(resultPath, revisionChanges);
}

ขยาย ChangeInfo ด้วยคุณสมบัติของสเปรดชีต

ได้เพิ่มคุณสมบัติใหม่ 3 รายการใน ChangeInfo เพื่อเปิดเผยเมตาดาต้าระดับสเปรดชีตสำหรับการเปลี่ยนแปลงแต่ละรายการ คุณสมบัติเหล่านี้จะถูกเติมค่าเมื่อเปรียบเทียบไฟล์ Excel (.xlsx) และ CSV (.csv) และช่วยให้คุณระบุตำแหน่งการเปลี่ยนแปลงได้อย่างแม่นยำในตารางสเปรดชีต:

  • Row – ดัชนีแถว (เริ่มจาก 0) ของเซลล์ที่เปลี่ยนแปลง
  • Column – ดัชนีคอลัมน์ (เริ่มจาก 0) ของเซลล์ที่เปลี่ยนแปลง
  • ColumnHeader – ข้อความหัวคอลัมน์ของค