แอปพลิเคชันบรรทัดคำสั่งเพื่อแยกข้อความจากรูปภาพ, PDF และไฟล์เสียงโดยใช้ APIs วิสัยทัศน์และคำพูดของ Apple
![หน้าต่างเทอร์มินัลแสดงข้อความ: | % textra the-mueller-report.pdf -o report.txt | แปลง: | -อินพุต (448 pg) The-Mueller-Report.pdf | - เอาต์พุต Full Text Report.txt | - 16 จาก 448 [-] ETA: 00:05:21 (ที่ 1.34 IT/s)](https://images.downcodes.com/uploads/20250509/img_681def6e8eb0b30.png)
Textra ต้องการ Mac OS เวอร์ชัน 13 หรือมากกว่าเพื่อเข้าถึง API VisionKit ล่าสุด
วิธีที่ง่ายที่สุดในการติดตั้ง textra คือการเปิดหน้าต่างเทอร์มินัลและเรียกใช้คำสั่งต่อไปนี้:
curl -L https://github.com/freedmand/textra/raw/main/install.sh | bash อีกทางเลือกหนึ่งดาวน์โหลดรีลีสล่าสุดคลายซิปและวาง textra Executable ที่ไหนสักแห่งบน $PATH ของคุณ
textra [options] FILE1 [FILE2...] [outputOptions] -h , --help : แสดงความช่วยเหลือขั้นสูง
-s , --silent : ระงับเอาต์พุตที่ไม่จำเป็น
-l , --locale : ระบุสถานที่ (เช่น en-us) สำหรับการจดจำข้อความ
-v , --version : แสดงหมายเลขเวอร์ชัน
-x , --outputStdout : เอาต์พุตทุกอย่างไปยัง stdout (ค่าเริ่มต้น)
-o , --outputText : เอาต์พุตทุกอย่างไปยังไฟล์ข้อความเดียว
-t , --outputPageText : เอาต์พุตแต่ละไฟล์/หน้าไปยังไฟล์ข้อความ
-p , --outputPositions : ข้อความตำแหน่งเอาต์พุตสำหรับแต่ละไฟล์/หน้าไปยัง JSON (การทดลอง; ผลลัพธ์อาจแตกต่างจากข้อความหน้า)
textra audio.mp3 : แยกข้อความจาก "Audio.mp3" และเอาท์พุทไปยัง stdout
textra page1.png page2.png -o combined.txt : แยกข้อความจาก "page1.png" และ "page2.png" และส่งออกข้อความรวมเป็น "combined.txt"
textra doc.pdf -o doc.txt -t doc/page-{}.txt : แยกข้อความจาก "doc.pdf" และเอาท์พุทในสองรูปแบบ: 1) ข้อความรวมของหน้าทั้งหมดที่เก็บไว้ใน "doc.txt" และ 2) ข้อความตำแหน่ง "หน้า" ฯลฯ )
textra image1.png -o text1.txt image2.png -o text2.txt : แยกข้อความจาก "image1.png" และเอาต์พุตที่ "text1.txt"; แยกข้อความจาก "image2.png" และเอาต์พุตที่ "text2.txt"
textra image.png --outputPositions positionalText.json : แยกข้อความตำแหน่งจาก "image.png" และเอาต์พุตที่ "positionaltext.json"
ในการใช้ textra คุณต้องระบุไฟล์อินพุตอย่างน้อยหนึ่งไฟล์
textra จะแยกข้อความทั้งหมดออกจากไฟล์ Image/PDF/Audio ที่ป้อนเข้า โดยค่าเริ่มต้น textra จะพิมพ์เอาต์พุตไปยัง stdout ซึ่งสามารถดูหรือส่งลงในโปรแกรมอื่นได้
คุณสามารถใช้ตัวเลือกเอาต์พุตด้านบน ณ จุดใดก็ได้เพื่อแยกไฟล์ที่ระบุไปยังดิสก์ในรูปแบบต่างๆ ตัวอย่างเช่น textra doc.png -o page.txt -p page.json จะแยก "doc.png" ในสองรูปแบบ: เป็นข้อความหน้าเป็น "page.txt" และเป็นข้อความตำแหน่งเป็น "page.json"
คุณสามารถเว้นวรรคกับอินพุตด้วยตัวเลือกเอาต์พุตเพื่อควบคุมอย่างประณีตซึ่งเอกสารที่สกัดหลายฉบับจะจบลง ตัวอย่างเช่น textra doc.png -o image.txt speech.mp3 -o audio.txt จะแยก "doc.png" ถึง "image.txt" และ "speech.mp3" เป็น "audio.txt" ตามลำดับ
สำหรับตัวเลือกเอาต์พุตที่เขียนไปยังแต่ละหน้า ( -t , -p ), textra อนุญาตให้พาวเวอร์เอาท์พุทที่มีวงเล็บปีกกา {} วงเล็บปีกกาเหล่านี้จะถูกแทนที่ด้วยหมายเลขหน้าในกรณีของไฟล์ PDF ชื่อไฟล์ฐานในกรณีของไฟล์ภาพหรือ baseFileName-pageNumber ในกรณีของไฟล์ PDF หลายไฟล์ โดยไม่ต้องระบุวงเล็บปีกกา Textra จะผนวกเส้นประตามด้วยหมายเลขหน้า/ชื่อไฟล์ฐานไปยังเส้นทางที่ระบุ
ERROR: Speech recognizer does not support on-device recognition :
หากคุณได้รับข้อผิดพลาดนี้คุณอาจต้องเปิดใช้งานการเขียนตามคำบอกซึ่งคุณสามารถทำได้ใน การตั้งค่าระบบ -> คีย์บอร์ด -> การเขียนตามคำบอก -> เปิดใช้งานตามคำบอก
การพลิกการตั้งค่าตามคำบอกอาจไม่สามารถแก้ไขข้อผิดพลาดได้ทันที หาก textra ยังคงให้ข้อผิดพลาดนี้หรือหากคุณไม่สามารถสลับการตั้งค่าให้ลองคลิกที่รายการเมนู "แก้ไข" จากแถบเมนูด้านบนเมื่อคุณอยู่ในแอปพลิเคชัน (เช่นเทอร์มินัล) และคลิก สิ่งนี้อาจกระตุ้นให้คุณเปิดใช้งาน "ตามคำบอก" อีกครั้งและอาจมีการแจ้งเตือนไมโครโฟน (ซึ่งคุณสามารถยกเลิกได้ทันทีโดยคลิกที่ "เสร็จสิ้น")
ลอง textra อีกครั้ง หากใช้งานได้คุณอาจปิดการเขียนตามคำบอกได้ตลอดเวลาในการตั้งค่าระบบ หากไม่เป็นเช่นนั้นโปรดยื่นปัญหา
มิกซ์
repo นี้อยู่ในช่วงเริ่มต้น แต่ยินดีต้อนรับการมีส่วนร่วม โปรดส่งปัญหาหรืออย่าลังเลที่จะแยกและสนับสนุนคำขอดึง
ขอบคุณมากสำหรับ Brandon Roberts และ Marcos Huerta สำหรับความช่วยเหลือและกำลังใจในการสกัดข้อความตำแหน่ง