Кликабельные URL в выводе PDF, созданные Inkscape / SVG


12

Я предполагаю, что название в значительной степени описывает проблему.

Я использую Inkscape для написания документа SVG и преобразования его в PDF для публикации в Интернете (сохранение SVG в качестве исходного файла безопаснее).
У меня много URL в этом документе. Я знаю, что внутренние ссылки (кликабельные и не обязательно отображающие весь URL на экране) мало что значат в SVG и растровых изображениях (которые обычно предполагаются в качестве конечного выходного документа), но они хороши в PDF.

Редактировать выходной файл PDF и добавлять ссылки очень сложно, потому что формат PDF сложен и неприятен (если нет простой в использовании программы-редактора).
Как можно добавить такие ссылки простым способом (желательно в Inkscape / SVG)


В конце концов мне пришлось переместить все мои ссылки на отдельную страницу, которую я создал с помощью LibreOffice Draw, и экспортировал в pdf, а затем слил эти несколько файлов pdf pdftk.
saeedgnu

Ответы:


7

Лучшее решение, которое я нашел, чтобы ваши ссылки работали в PDF-файлах, созданных из Inkscape, было бы:

  1. сохранить из Inkscape как "Обычный SVG".
  2. откройте в Chrome обычный файл SVG.
  3. из Chrome: распечатать / сохранить в формате PDF.

Это не сработало для моей сложной SVG. Обычный svg отображается правильно с Chrome, но вывод Chrome в формате pdf - полный беспорядок! И URL тоже не кликабельны. Не говоря уже о внутренних ссылках невозможно (вам нужен формат тегов, как bbcode или html)
saeedgnu

Это произойдет, если я "Печатать в PDF". Но если я сохраню как pdf, выходной файл будет отображаться правильно с моим читателем PDF, но URL-адреса по-прежнему не кликабельны. И масштабирование текста не работает (это как растровое изображение)
saeedgnu

7

Основываясь на «теории» Кирали , я написал хакерский скрипт на python для добавления гиперссылок в сгенерированный PDF.

Все инструкции о том, что вам нужно и как его использовать, приведены в заголовке комментария скрипта. Я проверил это с помощью своего передового программного обеспечения. Если вы столкнулись с проблемой из-за другой версии inkscape / qpdf, напишите мне по электронной почте ваши файлы, и я посмотрю, смогу ли я помочь.

РЕДАКТИРОВАТЬ: я переписал этот скрипт в Go с гораздо лучшим удобством использования . Теперь вы просто добавляете гиперссылки на объекты, используя опцию «Создать ссылку» при щелчке правой кнопкой мыши, и запускаете svglinkifyпрограмму.


1

Один (косвенный) способ, если ваши ссылки основаны на тексте, это пройти через латекс.

При экспорте в PDF установите флажок «Не включать текст, а создавать файл латекса». Тогда координаты текстовых объектов будут доступны в файле .pdf_tex, где вам нужно будет вручную добавить ссылки. Затем скомпилируйте с pdflatex.


В Inkscape 0.48 этот параметр называется «PDF + латекс: пропустить текст в PDF и создать файл LaTeX». Я не очень хорошо знаю TeX, но все равно спасибо :)
saeedgnu

1

Если вы столкнулись с проблемой в Inkscape, вы можете отредактировать свой PDF-файл с помощью прикрепленной ссылки отсюда: http://www.pdfescape.com/open/


2
Хотя ваш ответ на 100% правильный, он также может стать на 100% бесполезным, если эта ссылка будет перемещена, изменена, объединена с другой или основной сайт просто исчезнет ... :-( Поэтому, пожалуйста, отредактируйте свой ответ и скопируйте соответствующую ссылку. переходя от ссылки к вашему ответу, тем самым гарантируя ваш ответ на 100% срока службы этого сайта! ;-) Вы всегда можете оставить ссылку внизу вашего ответа в качестве источника для своего материала ...
Дональд Дак

@DonaldDuck: ссылка указывает на онлайн-инструмент (соответствующих шагов нет)
Clément

-1

Теоретически, щелкните правой кнопкой мыши на любом объекте и нажмите «Создать ссылку». Затем снова щелкните правой кнопкой мыши на том же объекте, для "Свойства ссылки" ...

Теоретически. .)


Я воплотил вашу теорию в жизнь . =]
Мансур

Это не дает ответа на вопрос. Чтобы критиковать или запрашивать разъяснения у автора, оставьте комментарий под его постом - вы всегда можете комментировать свои собственные посты, и, когда у вас будет достаточно репутации, вы сможете комментировать любой пост .
Ramhound

-1
  • Щелкните правой кнопкой мыши по нужному объекту.
  • Нажмите «Создать ссылку»
  • Откроется окно .. в поле "href" добавьте свой URL.
  • Сохраните ваш документ как SVG.
  • Откройте свой документ с помощью Google Chrome и нажмите Ctrl + P.
  • Щелкните правой кнопкой мыши на предварительный просмотр вашего документа и нажмите «Проверить элемент»
  • Скопируйте ссылку в поле «src» и откройте ее с помощью Google Chrome, документ начнет загружаться в формате PDF.
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.