Issue #3049✓ ResueltoAbierto el 28 de septiembre de 2020por lebonsavaneReacciones 2

Cambio automático de página

Respuesta rápidapor MartinPutz2

@lebonsavane Que yo sepa, actualmente no hay ninguna función para eso. Crearía un componente personalizado llamado 'Página', pondría 'removible' en falso y este componente se añadiría después de cargar el editor. Así que siempre habría al menos una página. Podrías especificar la altura de este componente personalizado...

Lee la respuesta completa abajo ↓

Pregunta

Hola, ¿Cómo puedo implementar el pageBreak automático en GrapeJs? Por ejemplo, quiero un pageBreak cada 500px. ¿Cómo puedo hacer eso? Atentamente, Gracias por tu respuesta @artf

Respuestas (2)

👍 Muy útilMartinPutz3 de octubre de 2020

@lebonsavane Que yo sepa, actualmente no hay ninguna función para eso.

Crearía un componente personalizado llamado 'Página', pondría 'removible' en falso y este componente se añadiría después de cargar el editor. Así que siempre habría al menos una página. Podrías especificar la altura de este componente personalizado como un parámetro de estilo.

Después, necesitarás lógica personalizada para determinar cuándo añadir una nueva página. Creo que solo hay dos formas en que un contenido puede superar el 'límite de altura'. 1. El contenido actual aumenta Por ejemplo, cuando se incrementa la longitud del contenido de un componente de texto. 2. Se ha añadido nuevo contenido Obviamente, cuando insertas un nuevo componente en una página determinada, si la altura actual + la altura del nuevo componente es mayor que la altura de una página, necesitarías una página adicional donde se añadiría el nuevo componente.

En el primer caso podrías escuchar el 'component:styleUpdate:height' en cada componente de página, y cuando la altura supere la altura permitida, tendrías que separar el texto en dos componentes y luego empujar una parte a una nueva página.

El segundo caso se cubre bastante fácilmente escuchando el evento 'component:drag:end' (https://grapesjs.com/docs/api/editor.html#available-events) y luego haciendo los ajustes necesarios (añadir el componente a una página nueva si es la última página, si no, desplazar todo, varias páginas).

Si no necesitas un 'salto de página tan duro', podrías apañarte con el estilo CSS y solo con pausas visuales después de cierta altura.

Supongo que querrás usar grapesjs como editor de PDF/documentos y usar Pages, ¿no? A menos que estés dispuesto a hacer mucho desarrollo, te sugeriría añadir nuevas páginas manualmente, aunque veo valor en un modo 'documento' para grapesjs, aunque probablemente sería un plugin más que una función central.

Espero que esto ayude.

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.

Explora plugins gratuitos →
Opción premium

Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.

Explora plugins premium →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.