Tôi đang sử dụng OSX và muốn có thể chuyển đổi tập tin pdf thành văn bản.
Tôi muốn một ứng dụng miễn phí để làm điều này, vì tôi chắc chắn phải có một số.
Tôi đang sử dụng OSX và muốn có thể chuyển đổi tập tin pdf thành văn bản.
Tôi muốn một ứng dụng miễn phí để làm điều này, vì tôi chắc chắn phải có một số.
Câu trả lời:
Dưới đây là các bước tôi đã sử dụng để cài đặt và sử dụng xpdf qua Homebrew.
Cài đặt các phụ thuộc của Homebrew:
xcode-select --install
Cài đặt Homebrew từ trang web của họ:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
Làm những gì nó nói với bạn để hoàn thành cài đặt Homebrew.
Xác minh rằng Homebrew là hạnh phúc và hoạt động để spec.
brew doctor
Tiếp theo cài đặt xpdf và các phụ thuộc của nó:
brew install Caskroom/cask/xquartz
brew install xpdf
Cuối cùng, sử dụng pdftotext, một gói đi kèm với bộ xpdf:
pdftotext Some_Document.pdf Some_Document.txt
Tên tệp đầu tiên là một tệp PDF hiện có; thứ hai là đích đến. Kết quả tốt hơn nhiều so với phiên bản Adobe Acrobat (đã thừa nhận cũ). Chỉnh sửa: Các phiên bản mới (2019) của Adobe Acrobat đã cho thấy kết quả kém tương tự.
xquartz
không cần thiết cho các công cụ giao diện điều khiển trong xpdf
. Hơn nữa, có một poppler
ngã ba xpdf
dường như được duy trì tích cực hơn nhiều: github.com/scraperwiki/scraperwiki-python/issues/
Nhiều phương pháp.
Sử dụng tài liệu Google (bạn sẽ cần một tài khoản Google)
Sử dụng Automator (một số công việc cần thiết)
Bạn có thể sử dụng Automator để tạo một quy trình công việc có thể trích xuất văn bản từ các tệp PDF và lưu nó dưới dạng văn bản hoặc tài liệu RTF.
hoặc một ứng dụng từ App Store, ví dụ PDF sang Text
xpdf
mà tôi đã cài đặt với các cổng:
port install xpdf
chứa đựng:
xpdf-pdftotext
Nó thực hiện những gì bạn muốn cho bất kỳ tệp PDF nào đến từ tệp văn bản (chứ không phải từ hình ảnh):
xpdf-pdftotext PDF_file text_file
Phiên bản hiện tại của Adobe Reader (11.0.09) có mục "Lưu dưới dạng khác" trong Menu Tệp.
Một trong những lựa chọn là Văn bản .
Ứng dụng này miễn phí và thực hiện công việc tốt khi xuất các tệp văn bản. Tất cả hình ảnh trong tài liệu mới sẽ bị mất với định dạng .txt.
Tôi nghĩ bạn sẽ có thể sao chép và dán văn bản vào tài liệu khác. Để chọn tất cả các văn bản
Lưu ý rằng nếu bạn thử và thực hiện điều này và không có văn bản nào được dán, chỉ là một loạt các dòng trống, hãy thử in PDF của bạn sang PDF mới trước, ví dụ:
Bây giờ hãy thử quá trình trên với bản PDF mới này. Đã làm cho tôi!
PS: Nếu bạn có Microsoft Word, bạn có thể mở tệp PDF của mình bằng chữ
Tập lệnh python sau đây sẽ xuất văn bản từ tài liệu PDF sang tệp .txt. (Lưu ý: Không có gì đảm bảo rằng văn bản nhất thiết phải theo thứ tự có thể đọc được của con người, do cách dữ liệu được giữ ở định dạng PDF.)
Tập lệnh sẽ tạo các tệp văn bản cho bất kỳ tệp PDF nào được cung cấp dưới dạng đối số trên dòng lệnh (ví dụ pdf2txt.py myPDF.pdf
) hoặc bạn có thể sử dụng trong hành động "Run Shell Script" của Automator, đặt loại shell thành python và chuyển đầu vào thành "As argument" . Sau đó, bạn có thể sử dụng nó như một hành động nhanh hoặc DropApp.
#!/usr/bin/python
# coding: utf-8
import os, sys
from Quartz import PDFDocument
from CoreFoundation import (NSURL, NSString)
NSUTF8StringEncoding = 4
def pdf2txt():
for filename in sys.argv[1:]:
inputfile =filename.decode('utf-8')
shortName = os.path.splitext(filename)[0]
outputfile = shortName+" text.txt"
pdfURL = NSURL.fileURLWithPath_(inputfile)
pdfDoc = PDFDocument.alloc().initWithURL_(pdfURL)
if pdfDoc :
pdfString = NSString.stringWithString_(pdfDoc.string())
pdfString.writeToFile_atomically_encoding_error_(outputfile, True, NSUTF8StringEncoding, None)
if __name__ == "__main__":
pdf2txt()
if pdfDoc
tuyên bố với print(pdfDoc.string())
.