อัลกอริธึมแบรดลีย์

การแนะนำ

บางครั้งการทำงานกับไฟล์ PDF อาจต้องการมากกว่าการอ่านหรือแก้ไขไฟล์เท่านั้น คุณอาจต้องแปลงไฟล์เป็นรูปภาพ วิธีหนึ่งที่มีประสิทธิภาพในการแปลง PDF เป็นรูปภาพ TIFF คือการใช้อัลกอริทึม Bradley ผ่านไลบรารี Aspose.PDF สำหรับ .NET วิธีนี้ช่วยให้ได้รูปภาพไบนารีที่มีคุณภาพสูง เหมาะสำหรับการเก็บถาวรเอกสารและกรณีการใช้งานเฉพาะอื่นๆ

บทช่วยสอนนี้จะแนะนำคุณเกี่ยวกับขั้นตอนโดยละเอียดและง่ายต่อการปฏิบัติตามในการแปลงหน้า PDF เป็นภาพ TIFF โดยใช้อัลกอริทึม Bradley Binarization Aspose.PDF สำหรับ .NET ช่วยลดความซับซ้อนของงานนี้ ช่วยให้คุณสามารถทำให้เวิร์กโฟลว์เอกสารของคุณเป็นระบบอัตโนมัติและคล่องตัวมากขึ้น

ข้อกำหนดเบื้องต้น

ก่อนที่เราจะเจาะลึกโค้ด เรามาตรวจสอบกันก่อนว่าคุณได้เตรียมทุกอย่างที่จำเป็นเพื่อปฏิบัติตามแล้ว:

  • Aspose.PDF สำหรับ .NET: คุณจะต้องมีไลบรารี ดาวน์โหลดได้จากที่นี่.
  • Visual Studio (หรือ C# IDE ใดๆ)
  • ความรู้พื้นฐานเกี่ยวกับ C#
  • ใบอนุญาตที่ถูกต้องหรือใบอนุญาตชั่วคราว จาก Aspose

แพ็คเกจนำเข้า

ขั้นแรก อย่าลืมนำเข้าเนมสเปซที่จำเป็นลงในโปรเจ็กต์ของคุณ ไลบรารีเหล่านี้จะมอบเครื่องมือในการจัดการเอกสาร PDF แปลงเป็นรูปแบบ TIFF และใช้อัลกอริทึมการแปลงไบนารีของ Bradley

using System.IO;
using System;
using Aspose.Pdf;

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

ขั้นตอนที่ 1: ตั้งค่าไดเรกทอรีเอกสาร

ขั้นตอนแรกคือระบุเส้นทางไปยังไดเร็กทอรีที่เอกสาร PDF ของคุณตั้งอยู่ นอกจากนี้ คุณยังต้องกำหนดเส้นทางเอาต์พุตสำหรับรูปภาพ TIFF ที่จะสร้างขึ้นด้วย

string dataDir = "YOUR DOCUMENT DIRECTORY"; // เส้นทางไปยังไฟล์ PDF ของคุณ

นี่คือที่ที่คุณเก็บทั้งไฟล์ PDF ต้นฉบับและไฟล์ TIFF ที่แปลงแล้ว ตรวจสอบให้แน่ใจว่าไดเร็กทอรีได้รับการตั้งค่าอย่างถูกต้องเพื่อให้โค้ดสามารถอ่านและเขียนไฟล์ได้โดยไม่มีข้อผิดพลาด

ขั้นตอนที่ 2: เปิดเอกสาร PDF

เมื่อกำหนดเส้นทางเรียบร้อยแล้ว ก็ถึงเวลาเปิดเอกสาร PDF ที่คุณต้องการแปลง Aspose.PDF สำหรับ .NET ช่วยให้คุณโหลดเอกสารสำหรับการประมวลผลเพิ่มเติมได้ง่ายขึ้น

Document pdfDocument = new Document(dataDir + "PageToTIFF.pdf");

ที่นี่,PageToTIFF.pdf เป็นไฟล์ตัวอย่าง คุณสามารถแทนที่ด้วยไฟล์ PDF ใดๆ ก็ได้ตามที่คุณต้องการ วัตถุเอกสารจะเก็บ PDF ไว้เพื่อการจัดการเพิ่มเติม

ขั้นตอนที่ 3: กำหนดเส้นทางเอาต์พุตสำหรับรูปภาพ

ต่อไปคุณจะระบุเส้นทางเอาต์พุตสำหรับไฟล์ TIFF ที่สร้างขึ้น รวมทั้งไฟล์ TIFF มาตรฐานและเวอร์ชันไบนารี

string outputImageFile = dataDir + "resultant_out.tif";
string outputBinImageFile = dataDir + "37116-bin_out.tif";

โดยการแยกเส้นทางเหล่านี้ออกจากกัน คุณจะมีไฟล์หนึ่งสำหรับการแปลง TIFF มาตรฐาน และอีกไฟล์หนึ่งสำหรับภาพแบบไบนารีหลังจากใช้อัลกอริทึม Bradley แล้ว

ขั้นตอนที่ 4: สร้างวัตถุความละเอียด

เมื่อแปลงไฟล์ PDF เป็น TIFF ความละเอียดมีบทบาทสำคัญในการกำหนดคุณภาพของภาพ สำหรับจุดประสงค์ของเรา เราจะตั้งค่าไว้ที่ 300 DPI เพื่อให้แน่ใจว่าจะได้ผลลัพธ์ที่มีคุณภาพสูง

Resolution resolution = new Resolution(300);

DPI ที่สูงขึ้นหมายถึงความคมชัดของภาพที่ดีขึ้น โดยเฉพาะอย่างยิ่งเมื่อต้องจัดการกับเอกสารที่จะพิมพ์หรือเก็บถาวร

ขั้นตอนที่ 5: กำหนดค่าการตั้งค่า TIFF

ขั้นต่อไป คุณจะต้องกำหนดค่าการตั้งค่าสำหรับภาพ TIFF ที่นี่ เราจะใช้การบีบอัด LZW และตั้งค่าความลึกสีเป็น 1bpp (1 บิตต่อพิกเซล) เพื่อให้ได้ภาพไบนารี

TiffSettings tiffSettings = new TiffSettings();
tiffSettings.Compression = CompressionType.LZW;
tiffSettings.Depth = Aspose.Pdf.Devices.ColorDepth.Format1bpp;

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

ขั้นตอนที่ 6: สร้างอุปกรณ์ TIFF

ตอนนี้ คุณจะต้องสร้างอุปกรณ์ TIFF ที่จะจัดการการแปลง อุปกรณ์นี้ใช้ความละเอียดและการตั้งค่า TIFF ที่กำหนดไว้ก่อนหน้านี้

TiffDevice tiffDevice = new TiffDevice(resolution, tiffSettings);

อุปกรณ์ TIFF เป็นหัวใจสำคัญของการดำเนินการนี้ โดยจะนำเอกสาร PDF มาแปลงแต่ละหน้าเป็นภาพ TIFF ตามการตั้งค่าที่คุณกำหนดไว้ล่วงหน้า

ขั้นตอนที่ 7: แปลงหน้า PDF เป็น TIFF

ถึงเวลาประมวลผล PDF และแปลงหน้าแรกเป็นภาพ TIFF แล้วProcess วิธีการนี้ช่วยให้คุณแปลงหน้าเฉพาะหรือทั้งเอกสารได้ ในตัวอย่างนี้ เราจะแปลงหน้าแรก

tiffDevice.Process(pdfDocument, outputImageFile);

เมื่อวิธีการเสร็จสมบูรณ์แล้ว คุณจะมีภาพ TIFF ที่บันทึกไว้ในตำแหน่งที่กำหนดไว้ก่อนหน้านี้

ขั้นตอนที่ 8: ใช้อัลกอริทึม Bradley Binarization

ตอนนี้มาถึงขั้นตอนมหัศจรรย์แล้ว นั่นก็คืออัลกอริทึมของแบรดลีย์! อัลกอริทึมนี้จะแปลงภาพ TIFF ระดับสีเทาเป็นภาพไบนารี เพื่อปรับให้เหมาะสมสำหรับระบบการจดจำเอกสาร

using (FileStream inStream = new FileStream(outputImageFile, FileMode.Open))
{
    using (FileStream outStream = new FileStream(outputBinImageFile, FileMode.Create))
    {
        tiffDevice.BinarizeBradley(inStream, outStream, 0.1);
    }
}

วิธี BinarizeBradley ใช้สตรีมไฟล์สองสตรีม (อินพุตและเอาต์พุต) รวมถึงค่าขีดจำกัด (ที่นี่0.1) ที่กำหนดระดับการแปลงเป็นเลขฐานสอง หลังจากดำเนินการแล้ว คุณจะได้ภาพในรูปแบบเลขฐานสองที่สมบูรณ์แบบพร้อมใช้งาน

ขั้นตอนที่ 9: ยืนยันการแปลงสำเร็จ

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

System.Console.WriteLine("Conversion using Bradley algorithm performed successfully!");

เมื่อพิมพ์เสร็จแล้ว คุณจะรู้ว่าหน้า PDF ของคุณถูกแปลงเป็นไฟล์ภาพ TIFF ไบนารีเรียบร้อยแล้ว!

บทสรุป

นั่นแหละ! คุณเพิ่งเรียนรู้วิธีการแปลงหน้า PDF เป็นภาพ TIFF และใช้อัลกอริทึมการแปลงไบนารีของ Bradley โดยใช้ Aspose.PDF สำหรับ .NET กระบวนการนี้จำเป็นสำหรับการเก็บถาวรเอกสาร การจดจำอักขระด้วยแสง (OCR) และแอปพลิเคชันระดับมืออาชีพอื่นๆ ด้วยความละเอียดคุณภาพสูงและการบีบอัดที่มีประสิทธิภาพ คุณสามารถมั่นใจได้ว่าภาพเอกสารของคุณจะชัดเจนและมีขนาดที่จัดการได้

คำถามที่พบบ่อย

แบรดลีย์อัลกอริธึมคืออะไร

อัลกอริทึมของแบรดลีย์เป็นเทคนิคการแปลงภาพเป็นไบนารีที่แปลงภาพโทนสีเทาให้เป็นภาพไบนารี (ขาวดำ) ด้วยการกำหนดค่าเกณฑ์การปรับตัวสำหรับแต่ละพิกเซลตามสภาพแวดล้อม

ฉันสามารถแปลงไฟล์ PDF หลายหน้าเป็น TIFF ด้วยวิธีนี้ได้หรือไม่?

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

ความละเอียดที่เหมาะสมที่สุดในการแปลงไฟล์ PDF เป็น TIFF คือเท่าใด

สำหรับภาพคุณภาพสูง แนะนำให้ใช้ค่า DPI 300 อย่างไรก็ตาม คุณสามารถปรับค่านี้ตามความต้องการได้

1bpp หมายถึงอะไรในความลึกสี?

1bpp (1 บิตต่อพิกเซล) หมายความว่าภาพจะเป็นสีขาวดำ โดยแต่ละพิกเซลจะเป็นสีดำสนิทหรือสีขาวสนิทก็ได้

อัลกอริทึมของ Bradley เหมาะกับ OCR หรือไม่

ใช่ อัลกอริทึม Bradley มักใช้ในการประมวลผล OCR ก่อนการประมวลผล เนื่องจากช่วยเพิ่มความคมชัดของข้อความในเอกสารที่สแกน