ดึงข้อความจาก PDF ใดก็ได้
ในเบราว์เซอร์ของคุณ
ดึงชั้นข้อความที่สะอาดออกจาก PDF ใด ๆ — รักษาย่อหน้า รองรับหลายหน้า UTF-8 การดึงทำงานภายในเบราว์เซอร์ ไฟล์จึงไม่เคยออกจากอุปกรณ์
ตรวจสอบด้วยตัวคุณเอง: เปิด DevTools → แท็บ Network → ลากไฟล์มาวาง คุณจะเห็นว่าไม่มีการอัปโหลดใด ๆ เลย
สามขั้นตอน PDF ของคุณไม่ออกจากแท็บนี้
วาง PDF ของคุณ
เลือกไฟล์ที่ต้องการดึงข้อความ ระบบจะโหลดเข้าหน่วยความจำของเบราว์เซอร์ ไม่ใช่เซิร์ฟเวอร์
อ่านชั้นข้อความ
pdf.js เดินผ่านทุกหน้า เรียงลำดับรายการตามพิกัด Y และสร้างขึ้นย่อหน้าใหม่ในตำแหน่งที่ถูกต้อง
คัดลอกหรือดาวน์โหลด .txt
รับข้อความล้วน UTF-8 ที่สะอาด คัดลอกไปยังคลิปบอร์ดหรือบันทึกเป็น .txt — แล้วแต่คุณ
เมื่อต้องการข้อความ ไม่ใช่ PDF
เหตุผลในการดึงข้อความจาก PDF เกือบทุกครั้งวนรอบสิ่งเดียวกัน นั่นคือพาคำไปยังที่ที่ PDF เข้าไม่ได้ คุณอยากแปะคำพูดอ้างอิงในอีเมลโดยไม่ต้องลากไฟล์ PDF เป็นไฟล์แนบ คุณป้อนเอกสารยาวให้ผู้ช่วย AI ที่รับเฉพาะข้อความล้วน คุณอยาก grep รายงาน 200 หน้าหาวลีหนึ่ง แต่การค้นหาในตัวอ่านปกปิดบางสิ่ง คุณกำลังแปลสัญญาและเครื่องมือแปลต้องการต้นทางในรูปแบบไฟล์เรียบ คุณดึงต้นฉบับที่จัดหน้าเสร็จจาก PDF กลับมาที่โปรแกรมแก้ไขข้อความ ในทุกกรณี สิ่งที่ขวางทางคือเปลือกหุ้ม — คำต่าง ๆ ปกติดี เพียงแต่ติดอยู่ในเลย์เอาต์ที่ประกอบกลับยาก
เอาต์พุตที่นี่ก็คือสิ่งนั้นพอดี ข้อความล้วน ไฟล์ .txt ใหญ่หนึ่งไฟล์ ในลำดับเดียวกับที่อ่าน PDF ไม่มีฟอร์แมต ไม่มีฟอนต์ ไม่มีรูป ไม่มีตาราง-เป็น-ตาราง งานคือการปลดปล่อยคำ
«การสกัด» ทำอะไรจริง ๆ
PDF เก็บข้อความสองชนิด ข้อความจริง — ตัวอักขระที่วาดด้วยฟอนต์และ PDF ติดป้ายว่าเป็นตัวอักษร — อยู่ในชั้นข้อความ ชั้นนี้เครื่องมืออ่านโดยตรง อีกชนิดคือข้อความที่มีอยู่เฉพาะในรูปพิกเซล อะไรก็ตามที่ถูกสแกน ถ่ายภาพ หรือสกรีนช็อตก่อนเข้า PDF อักขระเหล่านี้เป็นภาพของตัวอักษร ไม่ใช่ตัวอักษร และไม่มีโปรแกรมสกัดใดเห็นเป็นข้อความได้โดยปราศจาก OCR ที่นี่ไม่มีขั้นตอน OCR
การตรวจสอบเร็ว ๆ สองอย่างบอกได้ว่า PDF ของคุณเป็นแบบไหน เปิดในตัวอ่านใด ๆ คลิกแล้วลากบนย่อหน้า ถ้าข้อความถูกไฮไลต์อย่างเรียบร้อย แสดงว่ามีชั้นข้อความและการสกัดจะใช้ได้ ถ้าเคอร์เซอร์วาดสี่เหลี่ยมและไม่มีอะไรไฮไลต์ หน้านั้นเป็นภาพ และต้องผ่าน OCR ก่อน (ในเครื่องมืออื่น) ให้โปรแกรมสกัดมีอะไรอ่าน
การแบ่งบรรทัดและย่อหน้าออกมาอย่างไร
PDF ไม่เก็บย่อหน้า ข้างในนั้นหนึ่งหน้าคือถุงของชิ้นข้อความที่มีตำแหน่ง ไม่มีเมตาดาตาบอกว่า «ที่นี่จบย่อหน้า» ข้อความล้วนที่อ่านง่ายโดยไม่มีการแบ่งย่อมไม่มี ดังนั้นเครื่องมือจึงอนุมานจากระยะห่างแนวตั้ง ระยะเล็กระหว่างบรรทัดกลายเป็นการแบ่งบรรทัดเดียว ระยะใหญ่กว่า (ที่นักออกแบบเว้นไว้ระหว่างย่อหน้า) กลายเป็นบรรทัดว่าง กรณีปกติออกมาถูกต้อง เนื้อหา หัวเรื่อง รายการ เมื่อนักออกแบบใช้ระยะห่างผิดปกติเพื่อสิ่งอื่น เครื่องมือเดาไม่ได้และจุดเหล่านั้นอาจต้องการการแก้ไขด้วยมือเล็กน้อย
ในเอาต์พุต หน้าถูกคั่นด้วยบรรทัดว่าง ถ้าไม่อยากให้มีตัวคั่นหน้าเลย ใช้ค้นหา-และ-แทนที่ บรรทัดว่างคู่ด้วยบรรทัดเดียวเพื่อตัดออก
สิ่งที่ไม่รอดจากการสกัด
- ตัวหนา ตัวเอียง ฟอนต์ สี การจัดแนว ข้อความล้วนคือแบน ถ้าจำเป็นต้องเก็บฟอร์แมต ดู pdf-to-word
- ตาราง เซลล์กลายเป็นข้อความล้วนตามลำดับการอ่าน — มักทีละแถว มักมีระยะห่างเก้งก้าง ตารางที่ต้องคงเป็นตารางอยู่ที่ pdf-to-excel
- ภาพและไดอะแกรม สิ่งที่ไม่ใช่ข้อความใน PDF จะไม่ปรากฏในข้อความ เพื่อแยกภาพออกมาดู pdf-to-jpg
- หัวกระดาษและท้ายกระดาษ ถ้าต้นฉบับวน «เป็นความลับ — หน้า X จาก Y» ในทุกหน้า ข้อความที่สกัดก็จะเป็นเช่นนั้น ค้นหา-และ-แทนที่กำจัดได้ในไม่กี่วินาที
- คำที่ถูกตัดด้วยขีดเชื่อมในตอนท้ายบรรทัด คำที่ถูกแบ่งด้วยขีดเชื่อมจะออกมาเป็น
some-\nthingไม่ใช่somethingถ้าสำคัญต่อการค้นหาหรือเช็คคำในขั้นถัดไป regex-\n→ ว่าง แก้ได้ - เลย์เอาต์หลายคอลัมน์อาจเข้ามาคละกัน บทความวิจัยสองคอลัมน์อาจออกมาด้วยประโยคจากคอลัมน์ซ้ายและขวาสลับกัน เอกสารคอลัมน์เดียว — รายงาน สัญญา หนังสือส่วนใหญ่ — ไม่ได้รับผลกระทบ ถ้าผลคละไม่ใช้ได้ สะอาดกว่าคือเปิด PDF ในเครื่องมือที่เคารพลำดับคอลัมน์ก่อนสกัดอีกครั้ง
หมายเหตุปฏิบัติบางข้อ
- ถ้า PDF ป้องกันด้วยรหัสผ่าน ส่งผ่าน unlock-pdf ก่อน PDF ที่เข้ารหัสไม่สามารถเปิดเพื่อสกัดข้อความได้
- สำหรับ PDF ขนาดใหญ่มาก (หลายร้อย MB หรือหลายพันหน้า) การสกัดยังคงทำงานในเบราว์เซอร์ของคุณ บนเดสก์ท็อปมักไม่เป็นปัญหา บนโทรศัพท์กับสแกน 500 หน้า เพดานคือหน่วยความจำเบราว์เซอร์ ในกรณีนั้นใช้เดสก์ท็อป
- เอาต์พุตเป็น UTF-8 ซิริลลิก กรีก อาหรับ จีน ละตินที่มีเครื่องหมายผ่านได้สะอาดเมื่อ PDF เก็บเป็นข้อความจริง PDF ที่วาดอักขระไม่ใช่ละตินเป็น embedded subset glyphs โดยไม่มีการเข้ารหัสที่ถูกต้อง สกัดออกมาเป็นขยะ — เป็นปัญหาของ PDF เอง ไม่ใช่ของโปรแกรมสกัด แก้ที่ต้นทาง: ส่งออกใหม่ด้วยการเข้ารหัส Unicode ที่ถูกต้อง
- รูปแบบชื่อไฟล์ ไฟล์
contract.pdfดาวน์โหลดเป็นcontract.txtPDF บนดิสก์ยังอยู่ที่เดิม
ไฟล์ของคุณจะเกิดอะไรขึ้น
การสกัดทำงานในเบราว์เซอร์ของคุณ เปิด DevTools และดูแท็บ Network ขณะทำงาน ไม่มีคำขอออกที่นำเนื้อหาไฟล์ออกไป PDF ยังอยู่บนดิสก์ .txt เป็นไฟล์ดาวน์โหลดใหม่ข้าง ๆ
คำถามที่พบบ่อย
การดึงทำงานอย่างไร?
เราใช้ pdf.js จาก Mozilla เพื่ออ่านชั้นข้อความฝังของ PDF ทีละหน้า รายการถูกจัดกลุ่มตามพิกัด Y เพื่อให้ขึ้นย่อหน้ายังคงอยู่ — ไม่มีเซิร์ฟเวอร์ ไม่มีการอัปโหลด
ใช้กับ PDF ที่สแกนได้ไหม?
ไม่ได้ การสแกนคือภาพของข้อความ ไม่ใช่ข้อความ — ต้องใช้ OCR ในการดึง ซึ่งเครื่องมือนี้ไม่ได้รัน หาก PDF ของคุณมาจากการสแกนกระดาษ ให้ใช้เครื่องมือ OCR ก่อน
ไฟล์ของฉันถูกอัปโหลดไปที่ไหนหรือเปล่า?
ไม่เลย การดึงทำงานทั้งหมดในเบราว์เซอร์ผ่าน WebAssembly — ตรวจสอบได้ที่ DevTools → Network ไฟล์ยังคงอยู่บนอุปกรณ์ของคุณ
แล้ว PDF ที่มีรหัสผ่านล่ะ?
ปลดล็อก PDF ก่อนด้วยเครื่องมือ ปลดล็อก PDF แล้วจึงดึงข้อความ สตรีมเนื้อหาที่เข้ารหัสไม่สามารถถูกแยกวิเคราะห์ได้หากไม่มีรหัสผ่าน
จำกัดขนาดไฟล์เท่าไหร่?
สูงสุด 100 MB หากใหญ่กว่านี้อาจทำให้หน่วยความจำของเบราว์เซอร์หมด — ลองแบ่งไฟล์ก่อนด้วย แบ่ง PDF