Re[7]: Сохранение в PDF сложных страниц из браузера
От: rudzuk  
Дата: 01.11.23 17:49
Оценка: -1 :)
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ> R>Лис в этом случае сохраняет страницу, а все внешние объекты сохраняет в папку одноименную, рядом лежащую.


ЕМ> Чем это отличается в плане хранения, а не пересылки/демонстрации?


Или две сущности хранить, или одну. Разница очевидна.

ЕМ> R>Доказательством может служить только pdf?


ЕМ> Файл любого формата, в котором в более-менее читаемом виде будет представлено содержимое страницы сайта, и который сумеют открыть сотрудники типичной государственной/коммерческой организации без вдумчивой помощи технарей, и при необходимости напечатать.


ЕМ> Какова вероятность, что они сумеют открыть тот "единый" HTML, который создаст SingleFile, и что они получат, напечатав его? А если напечатать нужно будет мне?


html окрывается везде И, насколько мне известно, печатать все браузеры обучены.
avalon/3.0.2
Re[9]: Сохранение в PDF сложных страниц из браузера
От: kov_serg Россия  
Дата: 01.11.23 17:56
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Предлагаете мне написать в поддержку всех сайтов, где это есть, чтоб добавили?

В идеале да, они должны поддерживать media print, но большинству пофиг.

ЕМ>Или я чего не понял?

Нет просто после загрузки страници. js скрипт разворачивает все блоки (и добавляет другие костыли). Затем вы печатаете получившуюся хрень в pdf.
Отредактировано 01.11.2023 17:57 kov_serg . Предыдущая версия .
Re[8]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 01.11.23 18:01
Оценка:
Здравствуйте, rudzuk, Вы писали:

R>Или две сущности хранить, или одну.


Да хоть десять. Какой смысл это всё делать?

R>html окрывается везде И, насколько мне известно, печатать все браузеры обучены.


Такое впечатление, что Вы себе представляете нечто отличное от того, что делает предложенный Вами SingleFile. Если я сохраню в нем страницу, а затем открою ее сам, или ее откроют другие — они увидят ту же самую картину — с блоками, которые нужно скроллить туда-сюда. А если захотят напечатать, то на бумаге будет та же кусочная хрень, что и с исходной страницы. Так зачем мне это?
Re[10]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 01.11.23 18:02
Оценка:
Здравствуйте, kov_serg, Вы писали:

_>после загрузки страници. js скрипт разворачивает все блоки (и добавляет другие костыли)


Ну да, это то, что я упоминал в виде крайней меры — лезть самому в исходник страницы и править его (вручную или скриптом). Если не найдется ничего лучше — придется так.
Re[11]: Сохранение в PDF сложных страниц из браузера
От: kov_serg Россия  
Дата: 01.11.23 18:12
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Ну да, это то, что я упоминал в виде крайней меры — лезть самому в исходник страницы и править его (вручную или скриптом). Если не найдется ничего лучше — придется так.


Скажу больше: эти скрипты придётся допиливать под особо одарённые страницы отдельно.
Re: Сохранение в PDF сложных страниц из браузера
От: rosencrantz США  
Дата: 01.11.23 18:16
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Есть ли способы сохранить в PDF все, что браузер "статически видит" на странице? Понятное дело, я не претендую на сохранение того, что динамически генерируют скрипты — только того, что на данный в явном виде загружено в структуру HTML-документа. Пусть это будет коряво, лишь бы полностью, и в более читабельном виде, чем page source.


"Скролловость" состоит из двух частей:

1. У контейнера есть стиль overflow: scroll или overflow: auto
2. Размер контейнера каким-то образом ограничен

Можно в лоб найти все элементы п.1 и поменять у них стиль на overflow: visible. Текст будет рисоваться за пределами контейнера. В зависимости от дизайна возможно это будет читаемо.

Более работоспособное решение — это найти все элементы п.1, и убрать у них ограничение высоты. Тогда элементы-контейнеры вырастут по высоте и перестанут показывать скролл. Тут проблема в том, что существует очень много способов ограничить высоту элемента, т.е. в общем случае убрать это ограничение очень проблематично.

Если общее решение не нужно, а просто есть несколько сайтов/несколько страниц, я бы просто руками написал переопределения стилей и после этого спокойно печатал бы в PDF.
Re[2]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 01.11.23 18:42
Оценка:
Здравствуйте, vsb, Вы писали:

vsb>Если этот скролл исчезает от увеличения высоты окна браузера


Где-то исчезает, но не везде.

vsb>в chrome developer tools нажать Device Toolbar (типа мобильный вид) и там выставить любую высоту


Если только потом ничего не делать на странице. В Chrome ж это реализовано убого — масштаб невозможно ввести вручную, там или выбор от 50% и выше, или Fit Width, при котором может быть ни черта не видно.
Re[3]: Сохранение в PDF сложных страниц из браузера
От: Ziaw Россия  
Дата: 07.11.23 15:48
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Попробовал на самопальной странице — не разворачивает то, что за пределами блока.


В таком кейсе вообще непонятно, как должен выглядеть результирующий pdf. Во что развернуть? Кажется с такими страницами не один автомат адекватно не справится, надо сначала какие-то ручные стили дописать.
Re[4]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 07.11.23 21:42
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>непонятно, как должен выглядеть результирующий pdf.


Практически как угодно, лишь бы сохранял похожесть на исходный сайт, и содержал человекочитаемый текст.

Z>Во что развернуть?


В прямоугольник, содержащий весь текст блока, без прокрутки. По возможности расположить эти прямоугольники так, чтоб не оставалось слишком много пустого места.
Re[5]: Сохранение в PDF сложных страниц из браузера
От: Ziaw Россия  
Дата: 08.11.23 06:22
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

Z>>Во что развернуть?


ЕМ>В прямоугольник, содержащий весь текст блока, без прокрутки. По возможности расположить эти прямоугольники так, чтоб не оставалось слишком много пустого места.


В зависимости от содержимого может помочь убирание минимальной ширины/высоты, перенос слов. Примени кастомный стиль, который трансформирует блоки, чтобы они сначала начали отображаться, как тебе надо, а потом уже можно сохранять в пдф.
Re[6]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 08.11.23 07:11
Оценка:
Здравствуйте, Ziaw, Вы писали:

Z>Примени кастомный стиль


Понятно, что можно заняться хакерством средствами продвинутого браузера, но хочется готовенького.
Re[3]: Сохранение в PDF сложных страниц из браузера
От: fk0 Россия https://fk0.name
Дата: 08.11.23 10:35
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Здравствуйте, Pavel Dvorkin, Вы писали:

PD>>Print в Хроме м выбрать в качестве принтера "Сохранить в PDF" не устраивает ?
ЕМ>Нет — он так же не сохраняет то, что за пределами границы блока.

При "печати" на самом деле происходит рендеринг страницы заново. При этом
может использоваться (если подсунуть) отдельный stylesheet, в котором показывается
всё что нужно (а не прокручивается, как на экране). Как можно поступить: сохранить
html, в нём подправить/заменить CSS, потом загрузить и печатать.
Re[7]: Сохранение в PDF сложных страниц из браузера
От: fk0 Россия https://fk0.name
Дата: 08.11.23 10:36
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Здравствуйте, kov_serg, Вы писали:


_>>Так добавьте:


ЕМ>Куда добавить?


Открыть отладчик (в хроме -- Ctrl, Alt, I) и вписать в стили для всех элементов с ключевым словом !important.
Имеется ввиду, один раз вписать. И оно подействует на всё.
Re[5]: Сохранение в PDF сложных страниц из браузера
От: fk0 Россия https://fk0.name
Дата: 08.11.23 10:37
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Нужно это для того, чтобы сохранять в качестве доказательства страницы с важным содержимым. Например, сведения о каких-то объектах, переписку на сайте госконторы/организации, когда движок сервера использует вложенные блоки с прокруткой для отображения содержимого. Вот сейчас, например, хочу сохранить переписку с французской налоговой, сервер которой показывает список обращений в одном блоке с прокруткой, а историю переписки по конкретному обращению вставляет туда в виде вложенного блока, тоже с прокруткой. В Page Source все содержимое есть, но при печати в итоговом документе видны только "текущие" части каждого блока.


Записывать видео с десктопа. Полно софта.

ЕМ>Я, конечно, могу открыть в браузере Developer Tools, найти там эти блоки, увеличить их размер и т.п., но думал, вдруг есть что-то готовое.


Но возникает вопрос. Что рядом не сидит нотариуса, который заверит,
что в Developer Tools (или при записи видео) не было внесено ничего лишнего.
Re[6]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 08.11.23 10:50
Оценка:
Здравствуйте, fk0, Вы писали:

fk0>Что рядом не сидит нотариуса, который заверит, что в Developer Tools (или при записи видео) не было внесено ничего лишнего.


Вы смогли бы найти такого нотариуса? Я вот, даже будучи нотариусом, ни за что не взялся бы.
Re[7]: Сохранение в PDF сложных страниц из браузера
От: fk0 Россия https://fk0.name
Дата: 19.11.23 12:37
Оценка:
Здравствуйте, Евгений Музыченко, Вы писали:

ЕМ>Здравствуйте, fk0, Вы писали:


fk0>>Что рядом не сидит нотариуса, который заверит, что в Developer Tools (или при записи видео) не было внесено ничего лишнего.


ЕМ>Вы смогли бы найти такого нотариуса? Я вот, даже будучи нотариусом, ни за что не взялся бы.


А какой тогда в этих картинках смысл?
Re[8]: Сохранение в PDF сложных страниц из браузера
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 22.11.23 20:42
Оценка:
Здравствуйте, fk0, Вы писали:

fk0> А какой тогда в этих картинках смысл?


В первую очередь — такой, что их можно просто представить в качестве доказательства. При этом сторона, создавшая контент, вовсе не обязана его отрицать.
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.