@pqgg7nwkd4

Как правильно изменять страницу перед печатью в Chrome?

Добрый день.

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

Для этого написал скрипт на основе
window.matchMedia('print').addListener(...).

Изолированный пример тут https://advanty.ru/print/index.html . В примере, при изменении носителя, вся страница разбивается на части (<div class="page"></div>). Каждая часть - это одна страница.

Добавление заголовков увеличивают длину всего документа. Иногда настолько, что количество страниц увеличивается. И тут возникла проблема с браузером Chrome (Chromium) - он не печатает эти добавленные страницы и даже не выводит их в предпросмотре.

В FireFox - все отлично отрабатывает и показывается.

Вопрос: как сделать так, чтобы хром добавлял необходимые страницы при печати?
  • Вопрос задан
  • 484 просмотра
Пригласить эксперта
Ответы на вопрос 1
Veneomin
@Veneomin
Как бы там не было я решал такую задачу так:
1. Создавал кнопку "Печать"
2. При нажатии прятал все на экране кроме блока с печатью
3. Формировал печатный блок
4. Вызывал window.print()
5. Возобновлял исходный вид страницы (например window.location.reload())
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы