Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

836
Visualizações
Exportación de PDF de DataTables (pdfmake): ¿cómo evitar romper filas en saltos de página?

Estoy tratando de personalizar PDF-Export con DataTables (que usa pdfmake ). Todos mis estilos personalizados funcionan excepto dontBreakRows , no parece hacer ninguna diferencia, por lo que el contenido de las filas de la tabla se divide en saltos de página, en lugar de mantenerlos juntos en la página siguiente cuando no encajan en la anterior, lo que es lo que esperaba.

Mi versión de pdfmake es 0.1.27 (la última, en la fecha), DataTables 1.10.12, Buttons 1.2.1

Este es mi código:

 (...) $.extend( true, {}, buttonCommon, { 'extend': 'pdf', 'text': 'PDF A4', 'orientation': 'landscape', 'pageSize': 'A4', 'message': 'Date '+todays, 'customize': function (doc) { doc.content.splice(1, 0, { margin: \{0, -32, 0, 8\}, alignment: 'right', image: 'data:image/png;base64,(...)' }); //These styles are working: doc.defaultStyle.fontSize = 10; doc.styles.title.fontSize = 12; doc.styles.tableHeader.fontSize = 11; doc.styles.tableFooter.fontSize = 11; doc.styles.tableHeader.alignment = 'left'; doc.styles.title.bold = true; doc.styles.tableHeader.bold = true; doc.styles.tableHeader.color = '#ffffff'; doc.styles.tableHeader.fillColor = '#666666'; doc.styles.tableBodyOdd.fillColor = '#ffffff'; doc.styles.tableBodyEven.fillColor = '#e9e9e9'; doc.styles.tableHeader.noWrap = true; //It doesn't work: doc.styles.tableBodyOdd.dontBreakRows = true; doc.styles.tableBodyEven.dontBreakRows = true; doc.styles.tableBodyOdd.pageBreak = 'before'; doc.styles.tableBodyEven.pageBreak = 'before'; //It doesn't work neither: doc.defaultStyle = { dontBreakRows: true } } }), (...)

¿Qué estoy haciendo mal? ¡Gracias!

about 4 years ago · Santiago Trujillo
2 Respostas
Responde à pergunta

0

Tuve exactamente el mismo problema. Los estilos no funcionan.

Para mí esto funcionó (dependiendo de la posición de la tabla en el contenido):

 doc.content[1].table.dontBreakRows = true;

Si descubriste una mejor manera, solo házmelo saber.

about 4 years ago · Santiago Trujillo Relatório

0

Está usando bodyOdd y bodyEven , por lo que necesita usar

 doc.styles.tableBodyOdd.noWrap = true; doc.styles.tableBodyEven.noWrap = true;
about 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda