FreePDF logoFreePDF

Không copy được chữ trong PDF? Xác định đúng nguyên nhân trước

Bởi đội ngũ FreePDF ·

Bạn kéo chuột qua một đoạn văn mà không có gì được bôi đen. Hoặc bôi đen được nhưng lệnh Copy bị mờ. Hoặc dán ra toàn ký hiệu như tệp bị hỏng. Hoặc chữ về đủ nhưng dòng nào cũng bị ngắt cứng ở cuối. Mỗi trường hợp có một nguyên nhân riêng, và cách sửa cũng khác nhau.

Xác định bạn đang gặp trường hợp nào

  • Nhấp vào thì cả trang được chọn thành một khối, hoặc không chọn được gì: trang là ảnh, thường là bản scan.
  • Chữ bôi đen được nhưng Copy bị mờ, hoặc trình đọc báo không được phép sao chép: tệp có hạn chế quyền hạn. Phần thuộc tính tài liệu, mục Security, thường ghi rõ điều này.
  • Sao chép được nhưng dán ra là chữ vô nghĩa: lỗi phông chữ bên trong PDF.
  • Chữ dán ra đúng nhưng định dạng lộn xộn.

Trang là bản scan

Máy scan tạo ra một tấm ảnh của tờ giấy. Bạn đọc được chữ, nhưng tệp chỉ biết đến điểm ảnh, nên không có gì để chọn hay tìm kiếm. OCR đọc chữ từ ảnh rồi thêm một lớp chữ vô hình phía sau mỗi trang. Trang trông y như cũ, nhưng giờ bạn chọn, sao chép và tìm kiếm được.

OCR của chúng tôi chỉ đọc tiếng Anh. Với bản scan tiếng Anh sắc nét, thẳng và tương phản tốt, kết quả khá hơn nhiều so với ảnh điện thoại chụp xiên, dù vẫn nên soát lại tên và con số. Còn với văn bản tiếng Việt, chữ nhận ra sẽ mất gần hết dấu và không dùng được. Bạn cần một phần mềm OCR có gói tiếng Việt, chẳng hạn ocrmypdf chạy trên máy mình với tùy chọn -l vie.

Tệp chặn sao chép

PDF có thể mang hai loại mật khẩu. Loại thứ nhất chặn mở tệp. Loại thứ hai, mật khẩu quyền hạn, cho ai cũng mở được nhưng dặn trình đọc chặn sao chép, in hoặc chỉnh sửa. Lệnh Copy bị mờ là do loại này.

Nếu đó là tài liệu của bạn, hoặc chủ sở hữu đã cho phép bạn dùng lại nội dung, hãy đưa tệp vào Gỡ mật khẩu PDF. Vì tệp mở được mà không hỏi mật khẩu, bạn cứ để trống ô mật khẩu: tệp chỉ bị giới hạn quyền sẽ được gỡ theo cách đó, và bạn nhận về một bản đã bỏ lớp bảo vệ. Nếu công cụ vẫn đòi mật khẩu, hãy xin người gửi một bản không hạn chế. Hạn chế trên báo cáo có bản quyền hay đề thi thường được đặt có chủ đích.

Dán ra toàn chữ vô nghĩa

Bên trong PDF, chữ được lưu dưới dạng các mã trỏ tới hình dạng nét chữ trong một phông được nhúng. Để đổi các mã đó ngược lại thành chữ cái, trình đọc cần một bảng tra cứu nằm trong tệp. Có phần mềm bỏ qua bảng này hoặc dùng cách mã hóa riêng, nên trang hiển thị hoàn hảo còn khi sao chép thì bạn nhận về đúng những mã thô đó. Đổi trình đọc hiếm khi giúp được, vì thông tin đơn giản là không có trong tệp.

Với tài liệu tiếng Việt cũ còn một khả năng khác. Nếu chữ không dấu dán ra vẫn đọc được, còn các chữ có dấu biến thành ký tự Latin lạ, rất có thể văn bản gốc được gõ bằng phông TCVN3 (các phông .Vn như .VnTime) hoặc VNI. Chữ không hỏng, chỉ là sai bảng mã. Dán đoạn chữ vào Word, rồi dùng công cụ chuyển mã của Unikey, chọn nguồn TCVN3 hoặc VNI và đích Unicode, là thường đọc lại được.

Với tài liệu tiếng Anh, OCR là cách đi vòng, vì nó đọc hình dạng nét chữ chứ không đọc mã. Có điều, OCR của chúng tôi bỏ qua những trang đã có chữ để khỏi trùng lặp, và một trang toàn chữ vô nghĩa vẫn được tính là có chữ. Bạn phải biến các trang thành ảnh thuần trước:

  1. Chuyển PDF sang PNG ở mức Cao (300 DPI).
  2. Ghép các ảnh PNG lại thành PDF bằng PNG sang PDF, thêm đúng thứ tự trang.
  3. Đưa tệp mới qua OCR PDF.

Kết quả là một PDF kiểu bản scan có lớp chữ đúng. Nó nặng hơn bản gốc và chữ không còn là vector, nên hãy giữ bản gốc để đọc và dùng bản OCR để sao chép.

Chữ đúng nhưng xuống dòng sai

PDF không biết đoạn văn là gì. Nó lưu từng dòng đặt ở các vị trí trên trang, nên khi sao chép, mỗi dòng kết thúc bằng một dấu xuống dòng, và từ nào bị gạch nối giữa hai dòng thì vẫn giữ gạch nối. Sao chép chục trang kiểu này nghĩa là rất nhiều lần chọn lẻ tẻ.

PDF sang văn bản gom chữ của mọi trang vào một tệp .txt, giữa các trang có một dòng trống. Dấu xuống dòng vẫn còn, nhưng bạn chỉ phải dọn một lần. Trong Word, mở Replace, đánh dấu Use wildcards, tìm ([a-zà-ỹ,])^13 và thay bằng \1 kèm một dấu cách. Khoảng à-ỹ bao phần lớn các chữ có dấu của tiếng Việt, nên lệnh này nối lại những dòng kết thúc bằng chữ thường hoặc dấu phẩy, còn phần lớn chỗ hết đoạn thật thì giữ nguyên vì chúng kết thúc bằng dấu chấm. Hãy thử trên một bản sao trước.

Câu hỏi thường gặp

Vì sao tìm kiếm không ra những chữ tôi nhìn thấy trên trang?

Cùng nguyên nhân với việc sao chép. Trên bản scan không có chữ để tìm, còn với tệp bị lỗi phông, lệnh tìm đang tìm những chữ cái được lưu dưới dạng mã khác. Sau khi OCR, tìm kiếm hoạt động bình thường.

Gỡ hạn chế sao chép có được không?

Với tệp của chính bạn thì được. Với tệp của người khác, chỉ khi họ đã cho phép, và cách dễ nhất thường là xin họ một bản không hạn chế. Công cụ Gỡ mật khẩu PDF không đoán hay bẻ khóa mật khẩu, nó chỉ làm việc với mật khẩu bạn đã có.

Công cụ miễn phí liên quan