BookTranslator
BookTranslator

Cách dịch PDF nhiều cột mà không làm xáo trộn thứ tự đọc

Kiểm tra cách đọc của PDF hai cột trước khi dịch, chọn quy trình bố cục, OCR hoặc tái tạo dựa trên kiểm tra đó, và xem lại các cột, chú thích và phần tràn sau khi dịch.

BookTranslator

BookTranslator Team

16 min read

Trả lời nhanh: Kiểm tra thứ tự đọc trước khi dịch

Một PDF hai cột có thể trông gọn gàng nhưng vẫn cung cấp các đoạn văn cho công cụ dịch theo thứ tự sai. Khi đó, bản dịch có thể trôi chảy từng câu, nhưng toàn bộ trang lại trở nên vô nghĩa. Không công cụ nào có thể dịch thoát khỏi tình trạng đọc sai thứ tự nguồn.

Vậy thứ tự công việc là:

  1. Kiểm tra cách đọc của trang. Sao chép một trang đại diện và xác nhận rằng mọi đoạn văn xuất hiện theo thứ tự mà người đọc sẽ đọc.
  2. Chọn quy trình từ bước kiểm tra đó. Dùng dịch PDF giữ nguyên bố cục khi thứ tự đúng, chế độ OCR khi văn bản không dùng được, và quy trình chuyển đổi - sửa chữa khi bạn cần một tệp có thể chỉnh sửa.
  3. Kiểm tra các cột đã dịch. Xem điểm ngắt cột, chú thích hình, ghi chú toàn chiều rộng, chú thích cuối trang và những dòng quá dài.

Phần còn lại của hướng dẫn này cho thấy vì sao không thể bỏ qua bước 1, bằng một bài kiểm tra nhỏ bạn có thể tải về và tự chạy. Nó áp dụng cho PDF có lớp văn bản thật, như báo cáo xuất, bài báo và bản tin. Nếu trang của bạn là bản quét, hãy bắt đầu với cách dịch PDF quét.

Những gì chúng tôi đã kiểm tra

Vào ngày 20-10-2026, chúng tôi tạo ba tệp PDF một trang từ cùng một văn bản: một tiêu đề, một khung hình ở đầu cột trái, ba đoạn văn mỗi cột, một ghi chú in đậm trải rộng cả hai cột và một chú thích cuối trang. Mỗi đoạn văn bắt đầu bằng một dấu từ P1 đến P8, nên thứ tự đọc đúng là P1 đến P8.

Trang kiểm tra hai cột với khung hình ở đầu cột trái, các đoạn P1 đến P3 bên dưới, P4 đến P6 ở cột phải và ghi chú toàn chiều rộng P7

Ba tệp khác nhau ở những điểm bạn không thể thấy trên màn hình:

  • two-column-stream-logical.pdf lưu văn bản cột trái trước, rồi đến cột phải.
  • two-column-stream-rowwise.pdf trông giống hệt nhưng lưu các dòng theo hàng, xen kẽ giữa các cột.
  • two-column-no-figure-rowwise.pdf lưu văn bản theo hàng và không có khung hình. Đây là tệp đối chứng.

Sau đó chúng tôi trích xuất văn bản bằng bảy phương pháp mã nguồn mở phổ biến và ghi lại thứ tự đoạn văn mà mỗi phương pháp trả về:

Công cụ trích xuấtLưu trữ logic, có hìnhLưu trữ theo hàng, có hìnhLưu trữ theo hàng, không hình
pdftotext 26.08.0 (mặc định)P4 P1 P5 P6 P2 P3 P7 P8P4 P1 P5 P6 P2 P3 P7 P8P1–P8 chính xác
pdftotext -rawP1–P8 chính xácP1 P4 P5 P2 P6 P3 P7 P8P1 P4 P5 P2 P6 P3 P7 P8
pdftotext -layoutP4 P5 P6 P1 P2 P3 P7 P8P4 P5 P6 P1 P2 P3 P7 P8P1 P4 P5 P2 P6 P3 P7 P8
pypdf 5.1.0 extract_text()P1–P8 chính xácP1 P4 P5 P2 P6 P3 P7 P8P1 P4 P5 P2 P6 P3 P7 P8
pdfminer.six 20240706P4 P5 P6 P1 P2 P3 P7 P8P4 P5 P6 P1 P2 P3 P7 P8P1–P8 chính xác
PyMuPDF 1.24.14 get_text()P1–P8 chính xácP1 P4 P5 P2 P6 P3 P7 P8P1 P4 P5 P2 P6 P3 P7 P8
PyMuPDF 1.24.14 get_text(sort=True)P4 P5 P6 P1 P2 P3 P7 P8P4 P5 P6 P1 P2 P3 P7 P8P1 P4 P5 P2 P6 P3 P7 P8

Không có phương pháp nào trong bảy phương pháp xử lý đúng cả ba tệp. Mỗi phương pháp xử lý đúng một tệp lại sai một tệp khác. Trong tệp đối chứng, pdftotext -raw, pdftotext -layout và PyMuPDF với sort=True cũng in ra ba dòng, mỗi dòng trộn lẫn văn bản từ cả hai cột, đúng như những gì người đọc thấy khi văn bản sao chép chạy ngang qua rãnh giữa hai cột. PyMuPDF với sort=True cũng tạo ra một dòng như vậy trong mỗi tệp còn lại.

Bài kiểm tra được thiết kế có chủ đích nhỏ: một trang tiếng Anh tổng hợp, không gắn thẻ, được tạo bằng ReportLab. Nó không xếp hạng các thư viện này và không kiểm tra bất kỳ sản phẩm dịch nào, kể cả BookTranslator. Điều nó cho thấy hẹp hơn và hữu ích hơn: một trang trông giống hệt nhau có thể tạo ra thứ tự nguồn khác nhau, vì vậy cách kiểm tra đáng tin cậy duy nhất là tệp của chính bạn.

Bạn có thể tái tạo bài kiểm tra với trình tạo tệp mẫu, ba tệp PDF (theo thứ tự logic, theo từng hàng, không có hình), trình kiểm tra thứ tự, trình chạy trích xuất gọi cả bảy phương pháp, và tệp CSV kết quả.

Tại sao cùng một trang lại đọc theo thứ tự khác nhau

Các trình trích xuất sử dụng một trong hai chiến lược, và mỗi chiến lược lại thất bại với một tệp khác nhau.

Chiến lược 1: tuân theo thứ tự được lưu trong tệp. PDF vẽ văn bản theo bất kỳ thứ tự nào mà người tạo đã viết. Hướng dẫn sử dụng poppler mô tả pdftotext -raw là giữ "văn bản theo thứ tự luồng nội dung" (và không còn khuyến nghị chế độ đó nữa), và tài liệu của PyMuPDF cho biết đầu ra mặc định của nó là văn bản thuần "như được mã hóa trong tài liệu" (hướng dẫn pdftotext của poppler, công thức văn bản PyMuPDF). Cách này hiệu quả khi tệp lưu văn bản theo thứ tự đọc. Nó thất bại khi thứ tự được lưu là từng hàng, như trong tệp thứ hai của chúng tôi, mặc dù trang trông giống hệt nhau.

Chiến lược 2: xây dựng lại thứ tự từ vị trí văn bản trên trang. Chế độ mặc định của pdftotext cố gắng xuất văn bản "theo thứ tự đọc", pdfminer.six nhóm các dòng gần nhau thành các hộp và cho phép bạn đánh trọng số "vị trí ngang và dọc" khi sắp xếp chúng, và sort=True của PyMuPDF sắp xếp "từ trên cùng bên trái đến dưới cùng bên phải" (LAParams của pdfminer.six). Các phương pháp này bỏ qua thứ tự được lưu, vì vậy tệp logic và tệp từng hàng cho kết quả giống hệt nhau.

Tệp đối chứng giải thích sự thất bại. Không có hình, chế độ mặc định của pdftotext và pdfminer.six đều đọc P1 đến P8 một cách chính xác. Thêm một hộp hình ở đầu cột trái, và đoạn đầu tiên bên phải (P4) trở thành văn bản cao nhất trên trang. Một phương pháp đánh trọng số vị trí dọc sẽ bắt đầu trang từ đó.

Đây là một thiết kế trang phổ biến, không phải trường hợp ngoại lệ: các bài báo mở đầu cột trái bằng một hình hoặc hộp tóm tắt, tạp chí bắt đầu một cột bên dưới hình ảnh, và sách hướng dẫn đặt hộp cảnh báo phía trên bước đầu tiên. Ghi chú toàn chiều rộng (P7) và chú thích cuối trang (P8) vẫn giữ nguyên vị trí trong mọi lần chạy, vì vậy một kiểm tra chỉ nhìn vào cuối trang sẽ bỏ lỡ vấn đề.

Bước 1: Kiểm tra PDF của chính bạn trong năm phút

Các dấu đánh dấu trong tệp kiểm tra của chúng tôi không tồn tại trong tài liệu của bạn, nhưng cách kiểm tra tương tự cũng hiệu quả với một vài câu bạn tự chọn.

  1. Chọn trang khó nhất, không phải trang đầu tiên. Chọn một trang hai cột có hình, bảng hoặc hộp ghi chú gần đầu một cột, cùng với một tiêu đề hoặc ghi chú toàn chiều rộng ở giữa trang.
  2. Viết ra năm cụm từ neo, theo thứ tự đọc: những từ đầu tiên của cột trái, những từ cuối cùng của cột trái, những từ đầu tiên của cột phải, phần tử toàn chiều rộng, và chú thích hình.
  3. Sao chép toàn bộ trang từ trình xem PDF của bạn và dán vào trình soạn thảo văn bản thuần. Nếu bạn dùng một công cụ có bản xem trước nguồn, hãy dùng bản xem trước đó thay thế, vì nó hiển thị thứ tự mà công cụ thực sự nhận được.
  4. Tìm các cụm từ neo trong văn bản đã dán. Chúng phải xuất hiện theo thứ tự bạn đã viết, và không dòng nào được chứa từ của cả hai cột.
  5. Lặp lại với một loại trang khác, chẳng hạn như trang tài liệu tham khảo, trang có thanh bên, hoặc trang đầu tiên của một chương.

Diễn giải kết quả như sau:

Văn bản đã dán cho thấy gìĐiều đó thường có nghĩa là gìBước tiếp theo
Các cụm từ neo đúng thứ tự, không có dòng trộn lẫnVăn bản và thứ tự đọc có thể sử dụng đượcDịch PDF giữ nguyên bố cục
Cột phải bắt đầu trước cột tráiTrang đang được đọc theo vị trí dọcHãy thử công cụ dịch trên chính trang này trước khi trả tiền cho toàn bộ tệp
Các dòng trộn lẫn văn bản từ cả hai cộtTrang đang được đọc thẳng ngangĐừng sao chép và dán; hãy dùng quy trình dựa trên tệp và thử nghiệm trên trang này
Các đoạn văn nhảy giữa các cộtThứ tự lưu trữ là từng hàng hoặc bị hỏngHãy thử quy trình dựa trên tệp; nếu thất bại, hãy sửa chữa hoặc chuyển đổi trước
Không dán được gì, hoặc ký tự bị saiTrang chỉ có hình ảnh hoặc lớp văn bản bị hỏngDùng OCR; xem Trích xuất văn bản PDF so với OCR

Sao chép và dán là một kiểm tra nhanh, không phải bằng chứng về những gì công cụ khác sẽ làm. Bảng của chúng tôi cho thấy hai công cụ có thể đọc cùng một tệp theo cách khác nhau. Kết quả từ trình xem của bạn cho biết tệp có mức độ rủi ro như thế nào. Bản xem trước của chính công cụ, hoặc bản dịch thử một trang, cho bạn biết công cụ đó thực sự đọc được gì.

Nếu văn bản dán ra đúng chữ nhưng khoảng cách hoặc ngắt dòng bị hỏng, hãy khắc phục các vấn đề sao chép-dán văn bản trước khi đánh giá thứ tự cột.

Bước 2: Chọn quy trình dựa trên những gì bạn đã thấy

Chọn quy trình dựa trên kết quả kiểm tra, không dựa trên lời tuyên bố của công cụ rằng nó giữ nguyên bố cục của bạn.

Thứ tự đúng và văn bản có thể chọn được. Dịch PDF dưới dạng tệp, không phải bằng cách dán từng đoạn. Quy trình giữ nguyên bố cục đặt văn bản đã dịch trở lại trang, để các cột, hình ảnh và tiêu đề chạy vẫn ở đúng vị trí người đọc mong đợi. Trong BookTranslator, đó là đường dẫn dịch PDF tiêu chuẩn. Hãy coi bất kỳ lời hứa giữ nguyên bố cục nào, kể cả của chúng tôi, là điều cần kiểm chứng trên trang khó nhất bạn tìm thấy ở bước 1, chứ không phải là bảo đảm.

Thứ tự chỉ bị phá vỡ gần hình ảnh hoặc phần tử đóng khung. Trước khi dịch toàn bộ tài liệu, hãy chạy một trang có vấn đề qua công cụ bạn chọn. Nếu trang đó ra đúng thứ tự, công cụ không dùng cùng chiến lược như kiểm tra sao chép của bạn. Nếu ra lộn xộn, hãy thay đổi quy trình thay vì hy vọng phần còn lại của tệp sẽ khác đi.

Trang bị quét, hoặc lớp văn bản không dùng được. Hãy dùng OCR. Chế độ OCR của BookTranslator đọc hình ảnh trang và tạo lại một PDF đã dịch sạch sẽ. Trang đó khuyến nghị dùng nó cho sách giáo khoa, bài báo học thuật, bảng biểu và các trang nhiều hình ảnh, nơi việc giữ nội dung quan trọng hơn bố cục chính xác. Chúng tôi chưa thử nghiệm nó trên các tệp mẫu trong hướng dẫn này. Sự đánh đổi được nêu rõ: chế độ OCR không cố giữ nguyên bố cục, phông chữ hoặc cỡ chữ gốc. Riêng với bản quét, hãy xem cách dịch PDF quét.

Dù sao bạn cũng cần một tài liệu có thể chỉnh sửa. Chuyển PDF sang Word, sửa thứ tự đọc ở đó, rồi dịch DOCX. Cách này tốn công nhất, nhưng là con đường duy nhất để bạn trực tiếp sửa thứ tự đoạn văn trước khi dịch. Nó cũng làm thay đổi bố cục, nên hãy dùng khi đầu ra sẽ được chỉnh sửa tiếp, không phải khi cần trông giống trang gốc.

Tránh dán các cột vào chatbot hoặc ô văn bản. Bạn sẽ phải tự tay dựng lại thứ tự, chú thích và chú thích cuối trang trên từng trang. Bảng của chúng tôi cho thấy thứ tự đó dễ sai đến mức nào ngay từ trước khi bạn bắt đầu.

Với các bài báo học thuật, nơi cùng vấn đề này kết hợp với phương trình, trích dẫn và tài liệu tham khảo, hãy theo quy trình dịch bài báo nghiên cứu. Với quy trình giữ nguyên bố cục tổng quát cho mọi loại PDF, hãy xem cách dịch PDF mà vẫn giữ định dạng.

Bước 3: Kiểm tra các cột đã dịch

Bản dịch nhiều cột thất bại ở những chỗ mà việc lướt nhanh dễ bỏ qua. Hãy kiểm tra năm chỗ này trên mọi loại trang bạn đã thử ở bước 1:

  1. Ngắt cột. Đọc câu cuối cùng của cột trái và câu đầu tiên của cột phải. Lập luận phải tiếp tục, không nhảy sang một đoạn khác.
  2. Chú thích hình và hình minh họa. Mỗi chú thích vẫn phải nằm dưới hình minh họa của nó, đã được dịch, và không bị trôi vào phần thân văn bản.
  3. Các phần tử toàn chiều rộng. Tiêu đề, ghi chú và trích dẫn nổi bật trải rộng cả hai cột vẫn phải trải rộng như vậy, và không bị tách thành hai nửa câu.
  4. Chú thích cuối trang và tiêu đề chạy. Các dấu chú thích trong thân văn bản phải khớp với ghi chú ở cuối trang, và tiêu đề trang không được xuất hiện giữa đoạn văn.
  5. Tràn văn bản trong cột hẹp. Văn bản dịch thường dài hơn bản gốc. Hướng dẫn của W3C về kích thước văn bản trong bản dịch trích dẫn số liệu của IBM về độ dài khoảng 130% đối với văn bản nguồn tiếng Anh dài hơn 70 ký tự khi dịch sang các ngôn ngữ châu Âu, với mức tăng lớn hơn đối với chuỗi ngắn. Một cột hẹp có ít chỗ cho phần văn bản thừa đó, vì vậy hãy tìm các dòng bị cắt, chữ bị thu nhỏ hoặc văn bản chồng lên hình minh họa. Tiêu đề và ô bảng là những chỗ dễ bị tràn nhất.

Để kiểm tra, một tệp song ngữ sẽ hữu ích, nhưng bố cục của nó rất quan trọng. Đặt bản gốc và bản dịch trên cùng một trang sẽ nén hai ngôn ngữ vào những cột vốn đã hẹp. Trong tính năng dịch PDF tiêu chuẩn của BookTranslator (khi tắt chế độ OCR), PDF song ngữ cung cấp hai bố cục, Cùng trang và Trang riêng. Đối với tài liệu nhiều cột, hãy chọn Trang riêng: mỗi trang nguồn được theo sau bởi trang đã dịch, nhờ đó mỗi cột giữ nguyên chiều rộng ban đầu. Bạn vẫn có thể tải xuống phiên bản chỉ có bản dịch. Danh sách kiểm tra QA dịch PDF của chúng tôi bao gồm các bước kiểm tra còn lại ở cấp tệp.

Nếu PDF đã dịch cũng cần hoạt động với trình đọc màn hình, thứ tự trực quan là chưa đủ. Thứ tự đọc được gắn thẻ cần được kiểm tra riêng. W3C lưu ý rằng thứ tự đọc của PDF được gắn thẻ "được xác định chủ yếu bởi thứ tự thẻ của các phần tử tài liệu" (W3C PDF3). Hướng dẫn của chúng tôi về khả năng truy cập của PDF đã dịch chỉ cách kiểm tra điều này.

Những gì hướng dẫn này không khẳng định

  • Đây không phải là bảng xếp hạng công cụ. Bảy công cụ trích xuất được chọn vì chúng phổ biến và dễ chạy lại. Mỗi công cụ đều thất bại với ít nhất một trong ba tệp, và một tệp kiểm tra khác có thể thay đổi công cụ nào thất bại.
  • Nó không kiểm tra các sản phẩm dịch. Chúng tôi không chạy BookTranslator, DeepL, Google Translate hay bất kỳ công cụ dịch nào khác trên các tệp này. Các mô tả sản phẩm ở trên lấy từ nội dung quảng cáo hiện tại của BookTranslator, không phải từ bài kiểm tra này.
  • Một trang không phải là cả tài liệu. Các tệp thực tế kết hợp nhiều kiểu thiết kế trang, vì vậy hãy kiểm tra ít nhất hai kiểu trang.
  • PDF được gắn thẻ có thể hoạt động khác. Các tệp mẫu của chúng tôi không được gắn thẻ. Một PDF được gắn thẻ đúng cách mang thứ tự đọc rõ ràng mà một số công cụ sử dụng.

Dù sao thì nguyên tắc thực tế vẫn đúng: hãy tìm hiểu cách PDF của bạn đọc trước khi dịch nó. Nếu thứ tự đúng, hãy dịch tệp và kiểm tra các cột. Nếu sai, hãy thay đổi quy trình làm việc, không phải cài đặt dịch.

Bài viết liên quan