Чи можна в PDF-файлі зробити посилання на закладку за допомогою параметрів URL-адреси?


83

Надаючи посилання на файл PDF на веб-сайті, чи можна включити інформацію до URL-адреси (параметри запиту), яка змусить плагін браузера PDF (якщо він використовується) перейти до певної закладки, а не просто відкрити на початку?

Щось на зразок: http://www.somehost.com/user-guide.pdf?bookmark=chapter3 ?

Якби не закладка, чи можна було б перейти на певну сторінку?

Я припускаю, що якщо є відповідь, це може бути специфічним для плагіна Adobe Reader або чогось іншого, і може мати обмеження у версії, але мене здебільшого цікавить, чи існує ця техніка взагалі.

Відповіді:


79

Так, ви можете робити посилання на певні сторінки за номером або названими місцями, і це завжди буде працювати, якщо браузер користувача використовує Adobe Reader як плагін для перегляду PDF-файлів .

Для конкретної сторінки за номером:

<a href="http://www.domain.com/file.pdf#page=3">Link text</a>

Для вказаного місця (пункту призначення):

<a href="http://www.domain.com/file.pdf#nameddest=TOC">Link text</a>


Щоб створити напрямки в PDF за допомогою Acrobat:

  1. Перейдіть вручну в PDF для потрібного місця
  2. Перейдіть до Перегляд> Вкладки навігації> Пункти призначення
  3. У розділі Параметри виберіть Сканувати документ
  4. Після того, як це буде завершено, виберіть Нове призначення в меню Параметри та введіть відповідне ім'я

16
Важлива примітка: Названі пункти призначення не є закладками. Ви можете додати названі пункти призначення, використовуючи Adobe Acrobat (повний, не читальний!) Та його навігаційну панель "Цілі". Я не знаю, як одне посилання на закладки безпосередньо. Немає задокументованого параметра url.
eFloh

Я знаю, це старе питання. Але мені цікаво, чи знає хтось, як додати названі пункти призначення до pdf при побудові pdf у коді .net. Ми використовуємо компонент динамічний pdf для створення нашого pdf: s у .net. Динамічний pdf не підтримує додавання названих імен.
mortb

1
вона не працює з відносними посиланнями, наприклад somedir/my.pdf#page=3, і PDF-XChange Viewer (створений з my.docx через Save As .. PDF з MS Office Professional Plus 2010 / 14.0.7116.5000 )
Андреас Covidiot

2
Здається, проста опорна позначка працює для "закладок", принаймні для chrome v57. Тож таке посилання, як <a href=" example.com/file.pdf#mybookmark"> Текст посилання </a>, працює для chrome v57 (або вище, я гадаю)
Кемаль Ердоган,

17

Розділ 3 RFC 3778 визначає "Ідентифікатори фрагментів", які можна використовувати з файлами PDF, які включають найменування і сторінку.


11

Існує кілька параметрів запиту, якими можна обробити. Повний список нижче:

Джерело

+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| Syntax                  | Description                                                                                  | Example                                              |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| nameddest=destination   | Specifies a named destination in the PDF document                                            | http://example.org/doc.pdf#Chapter6                  |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| page=pagenum            | Specifies a numbered page in the document, using an integer                                  | http://example.org/doc.pdf#page=3                    |
|                         | value. The document’s first page has a pagenum value of 1.                                   |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| comment=commentID       | Specifies a comment on a given page in the PDF document. Use                                 | #page=1&comment=452fde0e-fd22-457c-84aa-             |
|                         | the page command before this command.                                                        | 2cf5bed5a349                                         |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| collab=setting          | Sets the comment repository to be used to supply and store                                   | #collab=DAVFDF@http://review_server/Collab           |
|                         | comments for the document. This overrides the default comment                                | /user1                                               |
|                         | server for the review or the default preference. The setting is of the                       |                                                      |
|                         | form store_type@location, where valid values for store_type are:                             |                                                      |
|                         | ● DAVFDF (WebDAV)                                                                            |                                                      |
|                         | ● FSFDF (Network folder)                                                                     |                                                      |
|                         | ● DB (ADBC)                                                                                  |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| zoom=scale              | Sets the zoom and scroll factors, using float or integer values. For                         | http://example.org/doc.pdf#page=3&zoom=200,250,100   |
| zoom=scale,left,top     | example, a scale value of 100 indicates a zoom value of 100%.                                |                                                      |
|                         | Scroll values left and top are in a coordinate system where 0,0                              |                                                      |
|                         | represents the top left corner of the visible page, regardless of                            |                                                      |
|                         | document rotation                                                                            |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| view=Fit                | Set the view of the displayed page, using the keyword values                                 | http://example.org/doc.pdf#page=72&view=fitH,100     |
| view=FitH               | defined in the PDF language specification. For more information,                             |                                                      |
| view=FitH,top           | see the PDF Reference.                                                                       |                                                      |
| view=FitV               | Scroll values left and top are floats or integers in a coordinate                            |                                                      |
| view=FitV,left          | system where 0,0 represents the top left corner of the visible                               |                                                      |
| view=FitB               | page, regardless of document rotation.                                                       |                                                      |
| view=FitBH              | Use the page command before this command.                                                    |                                                      |
| view=FitBH,top          |                                                                                              |                                                      |
| view=FitBV              |                                                                                              |                                                      |
| view=FitBV,left         |                                                                                              |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| viewrect=left,top,wd,ht | Sets the view rectangle using float or integer values in a                                   |                                                      |
|                         | coordinate system where 0,0 represents the top left corner of the                            |                                                      |
|                         | visible page, regardless of document rotation.                                               |                                                      |
|                         | Use the page command before this command.                                                    |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| pagemode=bookmarks      | Displays bookmarks or thumbnails.                                                            | http://example.org/doc.pdf#pagemode=bookmarks&page=2 |
| pagemode=thumbs         |                                                                                              |                                                      |
| pagemode=none           |                                                                                              |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| scrollbar=1|0           | Turns scrollbars on or off                                                                   |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| search=wordList         | Opens the Search panel and performs a search for any of thewords in the specified word list. | #search="word1 word2"                                |
|                         | The first matching word ishighlighted in the document.                                       |                                                      |
|                         | The words must be enclosed in quotation marks and separated byspaces.                        |                                                      |
|                         | You can search only for single words. You cannot search for a string of words.               |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| toolbar=1|0             | Turns the toolbar on or off.                                                                 |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| statusbar=1|0           | Turns the status bar on or off.                                                              |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| messages=1|0            | Turns the document message bar on or off.                                                    |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| navpanes=1|0            | Turns the navigation panes and tabs on or off.                                               |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| highlight=lt,rt,top,btm | Highlights a specified rectangle on the displayed page. Use the                              |                                                      |
|                         | page command before this command.                                                            |                                                      |
|                         | The rectangle values are integers in a coordinate system where                               |                                                      |
|                         | 0,0 represents the top left corner of the visible page, regardless of                        |                                                      |
|                         | document rotation                                                                            |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+
| fdf=URL                 | Specifies an FDF file to populate form fields in the PDF file beingopened.                   | #fdf=http://example.org/doc.fdf                      |
|                         | Note: The fdf parameter should be specified last in a URL.                                   |                                                      |
+-------------------------+----------------------------------------------------------------------------------------------+------------------------------------------------------+

Приємно, що ви знайшли цілі документи для цього, @Matas. Але чи не доступний новий документ? Цьому близько 10 років ...
Грег Дубіцький

2
@GregDubicki Привіт, Грег, я не думаю, що може бути новий, він міг би бути, якщо б вони випустили новий тип pdf (як pdfx) ... залежить від того, де механізм, який обробляє url, я гадаю ....
Матас Вайткевічус,

8

Варто додати, що рішення Уейна також працює в:

  • Chrome (починаючи з версії 14 від 2011 року, докладніше див. Цю проблему ) (перевірено на версії 87 і 44),
  • Firefox (протестовано на версії 84.0.1 і версії 40),
  • Opera (протестовано у 73 і 31),
  • Safari (протестовано у версії 14.0.2, він не працював у версії 8),

(Оновлено поточними версіями станом на січень 2021 р .)


Чи є у вас якась інформація про те, як IE обробляє посилання на контент у форматі PDF?
TeeJaay

Ні, у мене немає IE на моїй машині для тестування, вибачте @TeeJaay.
Грег Дубіцький

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.