Я использую React-to-pdf для создания PDF-файлов из моих компонентов React. Основная проблема, с которой я сталкиваюсь, заключается в том, что когда контент достигает конца страницы, он обрезается в середине контента (иногда даже обрезается через текстовые строки) вместо того, чтобы правильно перетекать на следующую страницу. Текущее поведение
Текст обрезается пополам по вертикали, когда достигает конца страницы
Часть текста появляется в внизу одной страницы, а остальная часть продолжается вверху следующей страницы.
Это происходит даже с простым текстом абзаца.
Похоже, что сокращение основано исключительно на высоте страницы и не учитывает границы содержимого.
Ожидаемое поведение
Текст должен перемещаться в конец следующая страница, если недостаточно места.
Содержимое не должно разбиваться посередине строк/слов.
По возможности между абзацами должны быть естественные разрывы страниц.
import { usePDF } from 'react-to-pdf';
const MyComponent = () => {
const { toPDF, targetRef } = usePDF({ filename: "document.pdf" });
return (
Long paragraph of text that might get cut off at the end of a page...
{/* More content */}
toPDF()}>Download PDF
);
};
Добавление отступов, чтобы контент не располагался слишком близко к границам страницы
Ни одно из этих решений не предотвратило обрезание контента посередине. Окружающая среда
React: 18.3.1
react-to-pdf: ^2.0.0
Браузер: последняя версия Chrome
ОС: Windows 10
Вопрос
Есть ли способ предотвратить обрезание содержимого в середине текста при преобразовании в PDF с помощью React-to-pdf? Как я могу обеспечить правильные разрывы страниц с соблюдением границ контента?
Я открыт для:
Параметры конфигурации, которые я мог пропустить
Решения CSS, которые работают специально с React-to-pdf
Альтернативные подходы к обработке разрывов страниц
Даже альтернативные библиотеки если React-to-pdf не может справиться с этим должным образом
Я использую React-to-pdf для создания PDF-файлов из моих компонентов React. Основная проблема, с которой я сталкиваюсь, заключается в том, что когда контент достигает конца страницы, он обрезается в середине контента (иногда даже обрезается через текстовые строки) вместо того, чтобы правильно перетекать на следующую страницу. [b]Текущее поведение[/b] [list] [*]Текст обрезается пополам по вертикали, когда достигает конца страницы [*]Часть текста появляется в внизу одной страницы, а остальная часть продолжается вверху следующей страницы. [*]Это происходит даже с простым текстом абзаца. [*]Похоже, что сокращение основано исключительно на высоте страницы и не учитывает границы содержимого. [/list] [b]Ожидаемое поведение[/b] [list] [*]Текст должен перемещаться в конец следующая страница, если недостаточно места. [*]Содержимое не должно разбиваться посередине строк/слов. [*]По возможности между абзацами должны быть естественные разрывы страниц. [/list] [img]https://i.sstatic.net/MB3zM5tp.png[/img]
[b]Пример кода[/b] [code]import { usePDF } from 'react-to-pdf';
[*]Обертывание контента в разные элементы контейнера
[*]Добавление отступов, чтобы контент не располагался слишком близко к границам страницы
[/list] Ни одно из этих решений не предотвратило обрезание контента посередине. [b]Окружающая среда[/b] [list] [*]React: 18.3.1 [*]react-to-pdf: ^2.0.0 [*]Браузер: последняя версия Chrome [*]ОС: Windows 10 [/list] [b]Вопрос[/b] Есть ли способ предотвратить обрезание содержимого в середине текста при преобразовании в PDF с помощью React-to-pdf? Как я могу обеспечить правильные разрывы страниц с соблюдением границ контента? Я открыт для: [list] [*]Параметры конфигурации, которые я мог пропустить [*]Решения CSS, которые работают специально с React-to-pdf [*]Альтернативные подходы к обработке разрывов страниц [*]Даже альтернативные библиотеки если React-to-pdf не может справиться с этим должным образом [/list]