Принимая векторный скриншот из Firefox

630
rumtscho

Я пытаюсь сделать векторный скриншот веб-страницы. Что я сделал:

  1. Запустите свежую Ubuntu 15.10 с LiveCD
  2. Установите Firefox Nightly с PPA, сейчас он 47.0a1
  3. Установить 'gtk-vector-screenshot' из вселенной
  4. Выйдите и войдите снова, чтобы перезагрузить X с его модулями.
  5. Запустите утилиту векторного скриншота и нажмите на веб-страницу

Печальный результат: он сохраняет пустое изображение.

<?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg"  xmlns:xlink="http://www.w3.org/1999/xlink" width="1106pt"  height="690pt" viewBox="0 0 1106 690" version="1.1"> <g id="surface9511"> </g> </svg>  

Я делаю что-то не так, или я нашел ошибку? Можно ли сделать векторный скриншот из Firefox? Кто-нибудь смог это сделать, и если да, то что мне не хватает?

2

1 ответ на вопрос

2
Ouroborus

gtk-vector-screenshotне будет работать, как вы ожидаете от всех приложений. Некоторые приложения используют холст и делают для этого собственный рисунок. Все, что вы получите, это заполнитель холста (как вы сделали). gtk-vector-screenshotполучает свои команды векторного рисования от GTK и преобразует их в эквивалентные команды SVG. Если программное обеспечение не использует функции отрисовки GTK для рендеринга, вы ничего не получите. Если вы заинтересованы, исходный код доступен здесь .

Правильно ли я понимаю, что проблема в том, что Firefox не использует функции рисования GTK, поэтому gtk-vector-screenshot не будет работать? Если Firefox - это то, что вам нужно для захвата, то для этого требуется другое программное обеспечение? fixer1234 7 лет назад 0
Это было бы мое предположение. Кроме того, маловероятно, что существует другое программное обеспечение, которое может фиксировать рендеринг Firefox как вектор. Вероятно, вам придется изменить исходный код Firefox, чтобы включить это. К счастью, [Firefox является открытым исходным кодом] (https://developer.mozilla.org/en-US/docs/Mozilla/Developer_guide/Source_Code/Downloading_Source_Archives). Ouroborus 7 лет назад 0
Или конвертировать скриншот в вектор потом? fixer1234 7 лет назад 0
Растровые снимки экрана не могут быть преобразованы в векторные, поскольку первоначальное преобразование из векторного в растровый режим является односторонней операцией. Большая часть информации чертежа безвозвратно теряется при рендеринге как растр. Однако, если вам действительно нужна векторная версия, независимо от того, как, есть [инструменты] (http://www.autotracer.org/), которые сделают конвертацию наилучшим образом. Ouroborus 7 лет назад 1
Таким образом, нет способа захватить веб-страницу как вектор? Насколько я мог найти, gtk-vector-screenshot - единственное программное обеспечение, доступное для векторных скриншотов, а Firefox - единственный браузер, использующий требуемую версию GTK. И да, я действительно хотел вектор, поэтому я мог немного его отредактировать, а затем экспортировать в более высоком разрешении, чем это возможно, с помощью простого растрового снимка экрана. В итоге я отредактировал CSS и затем сделал странные вещи с масштабированием, чтобы получить несколько приемлемое разрешение для печати. rumtscho 7 лет назад 0
Инструмент, который я связал, даст векторное изображение из обычного скриншота, но он не будет основан на оригинальных командах рисования. Является ли это пригодным для того, что вы хотите, я не знаю. Ouroborus 7 лет назад 0