Convert PDF to TXT in C#

ในฐานะนักเขียนโปรแกรมคุณมักจะต้อง استخراجเนื้อหาจากไฟล์ PDF เป็นข้อความเรียบสําหรับการประมวลผลเพิ่มเติมเช่นการวิเคราะห์และการ استخراجข้อมูล การประมวลผลไฟล์ PDF และแปลงไฟล์ PDF ทั้งหมดเป็นรูปแบบ TXT เป็นงานที่ผิดปกติเมื่อคุณไม่มีเครื่องมือที่เหมาะสม ดังนั้นในบล็อกนี้เราจะสํารวจวิธีการแปลงไฟล์ PDF เป็นรูปแบบ TXT โดยโปรแกรมใน C#.

C# Library for PDF to TXT การแปลง

[Aspose.Words for .NET][1] เป็น API การประมวลผลเอกสารที่น่าตื่นตาตื่นใจที่ช่วยให้ผู้พัฒนาสามารถทํางานกับเอกสาร Word เช่นเดียวกับรูปแบบอื่น ๆ รวมถึง PDF ด้วยคุณสมบัติที่กว้างขวาง Aspose.Words ช่วยให้การจัดการเอกสารการแปลงและการสร้างงานได้ง่าย เราจะใช้ห้องสมุดนี้เพื่อแปลงไฟล์ PDF เป็นรูปแบบ TXT ในแอพ .NET.

คุณสามารถติดตั้งห้องสมุดจาก [NuGet][5] โดยใช้คําสั่งต่อไปนี้ หรือดาวน์โหลด DLL จากส่วน [Releases][6.

PM> Install-Package Aspose.Words 

แปลงไฟล์ PDF ไปยัง TXT ใน C#

Aspose.Words for .NET ซ่อนทุกขั้นตอนที่ซับซ้อนของการสกัดข้อความจากไฟล์ PDF และช่วยให้คุณสามารถทําการแปลง PDF ไปยัง TXT ในขั้นตอนสองขั้นตอนตามที่กล่าวไว้ด้านล่าง.

  • ดาวน์โหลดไฟล์ PDF.
  • แปลงไฟล์ PDF ไปยังรูปแบบ TXT ด้วยการเรียกใช้ฟังก์ชั่นเดียว.

ดังนั้นด้วยสายรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัดรัด#.

  • ก่อนหน้านี้โหลดไฟล์ PDF โดยใช้คลาส Document.
  • จากนั้นบันทึกเอกสารเป็นไฟล์ TXT โดยใช้วิธีการ Document.Save(filePath.

รหัส C# ต่อไปนี้จะแปลงรูปแบบ PDF ไปยัง TXT.

รับใบอนุญาต API ฟรี

คุณสามารถได้รับ [อิสระใบอนุญาตชั่วคราว][2] เพื่อแปลงไฟล์ PDF ไปยังรูปแบบ TXT โดยไม่ต้อง จํากัด การประเมิน.

ข้อสรุป

ในโพสต์บล็อกนี้เราได้สํารวจวิธีการแปลง PDF ไปยัง TXT ใน C# โดยใช้ Aspose.Words สําหรับห้องสมุด .NET. ตามคําแนะนําและใช้รหัส snippet คุณสามารถประมวลผลไฟล์ PDF ขนาดใหญ่ได้อย่างง่ายดายและแปลงเป็นข้อความที่เรียบง่าย Aspose.Words ทําให้การประมวลผลเอกสารเป็นเครื่องมือที่มีค่าสําหรับนักพัฒนาที่ทํางานกับรูปแบบเอกสารต่างๆในแอพลิเคชันของพวกเขา คุณสามารถเยี่ยมชม [dokumentation][3] ของห้องสมุดประมวลผลคํา .NET นี้เพื่อสํารวจคุณสมบัติที่น่าตื่นเต้นของมัน ในกรณีที่คุณจะมีคําถามใด ๆ รู้สึกฟรีที่จะแจ้งให้เราทราบผ่าน [forum][4].

วิธีการดึงข้อความจาก PDF ด้วย Aspose.PDF

Aspose.PDF for .NET ให้คลาส Document สำหรับโหลดไฟล์ PDF และ TextAbsorber สำหรับสกัดข้อความทั้งหมดจากหน้า PDF ที่ต้องการ ตัวอย่างต่อไปนี้แสดงวิธีโหลดไฟล์ PDF, ใช้ TextAbsorber เพื่อดึงข้อความ แล้วบันทึกผลลัพธ์เป็นไฟล์ .txt อย่างง่ายดาย:

โค้ดนี้ทำงานได้โดยไม่ต้องคำนึงถึงโครงสร้างของ PDF (ตาราง, รูปภาพ ฯลฯ) หากต้องการสกัดข้อความจากหน้าเฉพาะ สามารถกำหนดช่วงหน้าได้ด้วย pdfDocument.Pages[1,5].Accept(absorber); เพื่อดึงข้อความจากหน้า 1 ถึง 5 เท่านั้น.

การจัดการข้อความที่มีหลายคอลัมน์

บาง PDF มีรูปแบบหลายคอลัมน์ ซึ่ง TextAbsorber จะดึงข้อความตามตำแหน่งบนหน้าโดยตรง หากต้องการให้ข้อความถูกจัดเรียงตามลำดับอ่านจริง สามารถใช้ LayoutTextAbsorber (หากเวอร์ชันของ Aspose.PDF มีให้) หรือทำการ post‑process ด้วยการแยกบรรทัดตามพิกัด Y‑coordinate. ตัวอย่างการแยกบรรทัดอย่างง่าย:

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

Q1: ฉันต้องใช้ License เพื่อแปลงไฟล์ PDF หรือสามารถใช้รุ่น Evaluation ได้?

  • ตอบ: รุ่น Evaluation ของ Aspose.PDF สามารถแปลงได้เต็มรูปแบบ แต่จะใส่ watermark “Created with Aspose.PDF”. สำหรับการใช้งานใน Production ควรขอ License ฟรี 30 วัน หรือซื้อ License ถาวร.

Q2: สามารถแปลง PDF ที่มีฟอนต์ฝังแบบ Unicode ได้หรือไม่?

  • ตอบ: รองรับอย่างเต็มที่ เนื่องจาก TextAbsorber ดึงข้อความในรูปแบบ Unicode แล้วบันทึกด้วย Encoding.UTF8 จึงไม่มีปัญหาเรื่องอักขระไทย.

Q3: การแปลงไฟล์ PDF ขนาดใหญ่ (หลายร้อยหน้า) ใช้เวลานานหรือไม่?

  • ตอบ: การสกัดข้อความเป็นกระบวนการที่เร็วมาก เนื่องจากไม่มีการเรนเดอร์กราฟิก หากต้องการประสิทธิภาพสูงสุด สามารถเปิดใช้งาน pdfDocument.OptimizeResources(); ก่อนสกัดข้อความ.

Q4: ฉันต้องการแปลงเฉพาะส่วนของ PDF เช่น หน้า 10‑15 หรือเฉพาะหน้าแรกเท่านั้นทำอย่างไร?

  • ตอบ: ใช้ pdfDocument.Pages[10,15].Accept(absorber); หรือ pdfDocument.Pages[1].Accept(absorber); เพื่อเลือกหน้าเป้าหมาย.

Q5: มีวิธีแปลง PDF เป็น TXT พร้อมบันทึกเมตาดาต้า (เช่น ชื่อผู้เขียน, วันที่สร้าง) ไหม?

  • ตอบ: เมตาดาต้าอยู่ใน pdfDocument.Info. สามารถดึงค่าเหล่านี้แล้วเขียนต่อท้ายไฟล์ TXT ได้ เช่น:
var info = pdfDocument.Info;
File.AppendAllText(txtPath, $"\n\nAuthor: {info.Author}\nTitle: {info.Title}\nCreationDate: {info.CreationDate}\n");

การรวมเมตาดาต้าเข้ากับข้อความทำให้ไฟล์ TXT มีข้อมูลบริบทที่ครบถ้วนสำหรับการวิเคราะห์ต่อไป.

ด้วยวิธีการเหล่านี้ คุณจะสามารถแปลง PDF ไปยัง TXT ได้อย่างแม่นยำ, รวดเร็ว, และพร้อมใช้งานในโครงการ C# ของคุณ.

More in this category