Nếu PDF có vẻ chính xác nhưng việc dán vào trình soạn thảo văn bản thuần túy sẽ tạo ra các ký tự khác nhau, hãy kiểm tra nguyên nhân trước khi thay đổi phông chữ hoặc chạy OCR. Ánh xạ giữa hình được vẽ trên trang và ký tự mà nó đại diện có thể sai. Việc sửa các lỗi văn bản PDF này bắt đầu bằng việc xác định phần nào của quá trình đó không thành công.
Tại sao văn bản có thể nhìn đúng nhưng sao chép sai?
Nội dung văn bản PDF có thể lưu trữ mã ký tự nguồn dành riêng cho phông chữ thay vì văn bản Unicode. Trình đọc PDF sử dụng phông chữ và thông tin mã hóa để định vị và vẽ hình tượng. Việc sao chép cũng yêu cầu dịch các mã đó thành các ký tự có ý nghĩa.
Do đó, việc vẽ chữ A không đảm bảo rằng việc trích xuất sẽ trả về A. ToUnicode là ánh xạ trong từ điển phông chữ liên kết mã ký tự nguồn PDF với chuỗi ký tự Unicode. Sự khác biệt giữa hiển thị và trích xuất văn bản này được mô tả trong Tài liệu tham khảo Adobe PDF, phần 5.9.

Ánh xạ phông chữ thực sự có ý nghĩa gì?
Ba khái niệm này có liên quan với nhau nhưng không thể thay thế cho nhau:
| Lập bản đồ | Vai trò chính |
|---|---|
Bảng cmap bên trong tệp phông chữ | Ánh xạ mã ký tự vào các chỉ số glyph; Bảng phụ Unicode sử dụng mã Unicode |
| Mã hóa PDF; phông chữ tổng hợp có thể sử dụng Encoding CMap | Giải thích mã ký tự nguồn PDF và giúp xác định vị trí glyph để vẽ |
PDF ToUnicode | Ánh xạ mã ký tự nguồn PDF thành văn bản Unicode để sao chép và trích xuất |
Đối với loại đầu tiên, hãy xem Thông số kỹ thuật OpenType cmap. Việc sửa chữa được thảo luận ở đây nhắm đến mục tiêu thứ ba; nó không xây dựng lại tập tin phông chữ hoặc thay thế các ký tự trên trang.
Ánh xạ ToUnicode bị thiếu không phải lúc nào cũng gây ra văn bản bị cắt xén. Trình đọc PDF đôi khi có thể khôi phục văn bản từ một mã hóa tiêu chuẩn, các tên hình tượng đã biết hoặc một bộ sưu tập ký tự. Ngược lại, một bảng ánh xạ có thể tồn tại nhưng vẫn chứa các liên kết không chính xác.
Trước tiên hãy kiểm tra xem bản đồ có phải là vấn đề không
Sao chép một đoạn văn ngắn vào trình soạn thảo văn bản thuần túy và so sánh nó với trang gốc:
| triệu chứng | Những gì cần kiểm tra đầu tiên |
|---|---|
| Trang trông có vẻ đúng, nhưng các ký tự được sao chép liên tục biến thành các ký tự khác | Ánh xạ ký tự bị thiếu hoặc không chính xác |
| Bạn chỉ có thể chọn một hình ảnh, không thể chọn văn bản | Lớp văn bản bị thiếu hoặc văn bản được chuyển đổi thành đường viền; xem xét tệp nguồn hoặc OCR |
| Văn bản có thể được chọn trên trang được quét nhưng nó không khớp với hình ảnh | Kết quả nhận dạng trong lớp văn bản OCR |
| Các ký tự riêng lẻ đều đúng nhưng các cột hoặc bảng không theo thứ tự | Thứ tự đọc và trích xuất bố cục |
| Bản thân trang này chứa các ký tự hoặc hộp bị thiếu | Tài nguyên phông chữ, mức độ bao phủ của glyph hoặc mã hóa hiển thị |
Đây là những manh mối khắc phục sự cố, không phải chẩn đoán chỉ dựa vào bề ngoài. Việc nhúng phông chữ và sao chép chính xác cũng là những mối quan tâm riêng biệt; xem Nhúng và tập hợp phông chữ PDF.
Làm cách nào bạn có thể sửa văn bản đã sao chép bằng cách sử dụng glyph gốc?
Giả sử mã nguồn <0001> trong một phông chữ cụ thể vẽ A nhưng ánh xạ không chính xác tới 错 (U+9519). Đây là đoạn ánh xạ minh họa, không phải là tệp CMap hoàn chỉnh:
Before: <0001> <9519>
After: <0001> <0041>
<0001> là mã nguồn PDF ở phông chữ đó, không phải ký tự Unicode U+0001. Ánh xạ nó tới U+0041 chỉ định rằng glyph đại diện cho A. ligature (một số chữ cái chia sẻ một glyph) cũng có thể cần ánh xạ tới một số ký tự Unicode, chẳng hạn như fi.
Khi bạn đã xác nhận rằng việc sửa chữa bản đồ là phù hợp, hãy sử dụng Công cụ sửa chữa văn bản PDF:
- Chọn PDF, sau đó chọn phông chữ cần sửa.
- So sánh các hình tượng gốc trong lưới và nhập văn bản chính xác bên dưới mỗi hình tượng.
- Xuất PDF đã sửa chữa và giữ lại bản gốc để so sánh.
Một thay đổi sẽ áp dụng ở mọi nơi sử dụng cùng một phông chữ và mã nguồn. Kiểm tra các phông chữ khác nhau một cách riêng biệt, ngay cả khi tên của chúng khớp nhau. Nếu OCR nhận dạng sai chỉ một từ, việc ánh xạ lại toàn bộ một ký tự cũng có thể làm hỏng văn bản vốn đã chính xác.
Làm thế nào để bạn xác minh việc sửa chữa?
Mở lại tệp đã xuất, đồng thời sao chép và tìm kiếm văn bản mẫu trong trình đọc PDF mục tiêu của bạn. Kiểm tra các lần xuất hiện khác của cùng mã và phông chữ mà bạn không chỉnh sửa. So sánh giao diện trang và kiểm tra dấu câu, chữ ghép và số thay vì chỉ kiểm tra ký tự sai đầu tiên.
Một số tệp PDF cũng sử dụng ActualText để cung cấp văn bản thay thế mà phần mềm hỗ trợ có thể thích hơn. Nếu việc thay đổi ToUnicode không giải quyết được sự cố, hãy kiểm tra phần ghi đè này. Công cụ hiện tại cảnh báo về ActualText nhưng không chỉnh sửa nó. Xem Giải thích về hiệp hội PDF.
Đối với lỗi OCR, hãy sửa hoặc nhận dạng lại lớp văn bản. Nếu bạn có tệp bố cục gốc, hãy xem xét sửa nó và xuất PDF mới. Các tệp không mở được hoặc gây ra lỗi cấu trúc cần có cách tiếp cận khác; xem khi sửa chữa định dạng PDF là thích hợp.
Khi bạn đã xác định được sự cố ánh xạ ký tự phông chữ, hãy sửa nó bằng công cụ sửa chữa văn bản PDF cục bộ. Các tập tin được xử lý trong trình duyệt của bạn mà không cần tải chúng lên. Bạn vẫn nên xác minh văn bản và hình thức trang đã sao chép sau khi xuất.


