pols-pdf 1.1.3 → 1.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -110,7 +110,7 @@ pdf.rectangle({
110
110
  pdf.cell({
111
111
  text: 'Texto de la celda',
112
112
  width: 200,
113
- height: 40, // o autojump: true si no se conoce el alto de antemano
113
+ height: 40, // opcional: si se omite, el alto se calcula según el contenido
114
114
  padding: 6,
115
115
  hAlign: 'center',
116
116
  vAlign: 'center',
@@ -122,11 +122,12 @@ pdf.cell({
122
122
 
123
123
  - `text` acepta `string`, `number`, `null`/`undefined`, un objeto `{ chars, font? }`, o un arreglo
124
124
  de estos últimos para mezclar fuentes/estilos dentro de una misma celda.
125
- - Una celda necesita **o bien** `height` (alto fijo) **o bien** `autojump: true` (el alto se
126
- calcula según el contenido y, si no entra en la página actual, el texto restante continúa
127
- automáticamente en una página nueva).
128
- - Si el contenido no entra en la página, `cell()` agrega una página nueva y continúa dibujando el
129
- resto automáticamente.
125
+ - Una celda admite `height` (alto fijo) **o** `autojump` (opcional, `boolean`, por defecto `true`):
126
+ con `autojump` el alto se calcula según el contenido y, si no entra en la página actual, el
127
+ texto restante continúa automáticamente en una página nueva. Pasar `autojump: false` desactiva
128
+ ese salto automático (el contenido que no entre se recorta al borde de la página).
129
+ - Si el contenido no entra en la página (con `autojump` activo, que es el default), `cell()`
130
+ agrega una página nueva y continúa dibujando el resto automáticamente.
130
131
 
131
132
  ---
132
133
 
@@ -193,6 +194,25 @@ Cambia la fuente activa del documento; los métodos de texto (`cell`, `row`, `ta
193
194
  aceptan `font` por llamada (y por fragmento de texto individual dentro de `text`), sin necesidad
194
195
  de llamar a `setFont` explícitamente.
195
196
 
197
+ `font` se hereda en cascada — tabla → fila → celda → fragmento de texto — y cada nivel solo
198
+ sobrescribe las propiedades que declara explícitamente, heredando el resto del nivel anterior. Por
199
+ ejemplo, en:
200
+
201
+ ```typescript
202
+ pdf.table({
203
+ font: { size: '80%' },
204
+ rows: [{
205
+ cells: [
206
+ { text: 'Solped:', font: { bold: true }, weight: 1 },
207
+ { text: '12345', weight: 3 },
208
+ ]
209
+ }]
210
+ })
211
+ ```
212
+
213
+ la celda `'Solped:'` se dibuja en **negrita y al 80% del tamaño de fuente activo**: `bold: true`
214
+ la define la celda, pero `size: '80%'` lo hereda de la tabla porque la celda no lo redefine.
215
+
196
216
  ---
197
217
 
198
218
  ## Tipos con forma abreviada (`*Params`)
@@ -211,6 +231,8 @@ completo:
211
231
 
212
232
  ## Convención de nombres
213
233
 
214
- Todas las clases y tipos exportados llevan el prefijo `P` (`PPdf`, `PCell`, `PRowParams`, etc.),
215
- siguiendo la convención usada en los paquetes hermanos de este ecosistema: `pols-date` (`PDate`)
216
- y `pols-utils` (`PRecord`, `PUtilsNumber`).
234
+ Todas las clases y tipos exportados llevan el prefijo `P` (`PPdf`, `PCellParams`, `PRowParams`,
235
+ etc.), siguiendo la convención usada en los paquetes hermanos de este ecosistema: `pols-date`
236
+ (`PDate`) y `pols-utils` (`PRecord`, `PUtilsNumber`). Los tipos ya resueltos que usa el motor de
237
+ layout internamente (`PCellCompiled`, `PRowCompiled`, `PTableCompiled`, etc.) llevan el sufijo
238
+ `Compiled` y no se exportan — no forman parte de la API pública.
package/dist/index.js CHANGED
@@ -683,7 +683,12 @@ class PPdf {
683
683
  left: params.left,
684
684
  pdf: this
685
685
  });
686
- let paramsToDraw = { ...params, width };
686
+ const left = params.left ?? this.cursor.left;
687
+ let paramsToDraw = {
688
+ ...params,
689
+ width,
690
+ left
691
+ };
687
692
  while (paramsToDraw) {
688
693
  const prepared = this.prepareCell(paramsToDraw);
689
694
  this.drawCell(prepared.currentPage);
@@ -698,6 +703,7 @@ class PPdf {
698
703
  paramsToDraw = null;
699
704
  }
700
705
  }
706
+ this.setCursorLeftPosition(left);
701
707
  }
702
708
  image(params) {
703
709
  const options = {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pols-pdf",
3
- "version": "1.1.3",
3
+ "version": "1.1.4",
4
4
  "main": "dist/index.js",
5
5
  "types": "dist/index.d.ts",
6
6
  "scripts": {