Tìm kiếm trang web

javascript - PDF nhúng - mở số trang mà không tải lại tài liệu


Tôi đã nhúng một tài liệu PDF bằng cách sử dụng thẻ đối tượng html và hiển thị nó trên một phần của trang web. Một phần khác chứa một cây liên kết (trông giống như mục lục của PDF). Khi nhấp vào một liên kết trong cây, PDF sẽ được tải lại và mở đúng trang (số trang được chứa trong các liên kết). Có cách nào để thực hiện điều này mà không cần tải lại tài liệu không?

Để diễn đạt lại câu hỏi, tôi đang tìm một hàm JavaScript có thể bắt chước hành vi của dấu trang - nhảy đến số trang mà không cần tải lại tài liệu.

Câu trả lời #1

Tôi nghĩ là không có phương thức gốc nào trong JavaScript cung cấp chức năng đó. Bạn sẽ cần một thư viện.

Cách dễ nhất là sử dụng một thư viện được tài liệu hóa tốt để làm việc với các tài liệu pdf trong JavaScript. PDF.js là một dự án rất tốt theo nghĩa đó, mặc dù nó tự kết xuất pdf, thay vì sử dụng Acrobat Reader, điều này có thể gây ra vấn đề với các tài liệu phức tạp.

Một giải pháp khác, sử dụng Adobe Acrobat reader, là sử dụng API JavaScript riêng của họ, theo liên kết đó bạn sẽ thấy toàn bộ tài liệu tham khảo API. Trích dẫn từ tài liệu đó (Trang 254):

sốTrang

Lấy hoặc đặt trang hiện tại của tài liệu. Khi đặt pageNum đến một trang cụ thể, hãy nhớ rằng các giá trị bắt đầu từ 0. [...]

Vì vậy, nếu bạn muốn đi đến một trang cụ thể của tài liệu, bạn có thể sử dụng

this.pageNum = 6;

Ở đây này nên là ngữ cảnh của ứng dụng. Tại đây bạn có thể tìm thấy tài liệu tham khảo API trực tuyến với nhiều tài liệu và ví dụ hơn.

Một số hướng dẫn về cách sử dụng API JS nêu trên:

  • http://blogs.adobe.com/pdfdevjunkie/web_designers_guide
  • http://cookbooks.adobe.com/post_Passing_information_actions_from_the_browser_to_an-18885.html
  • http://www.adobe.com/content/dam/Adobe/en/devnet/acrobat/pdfs/pdf_open_parameters_v9.pdf#page=5