Skip to content

Commit adcc0af

Browse files
authored
Merge pull request #4 from Mik318/fix/issue-3
feat: Add custom font support for special characters in PDF generation
2 parents 683058e + 8caac28 commit adcc0af

File tree

1 file changed

+22
-4
lines changed

1 file changed

+22
-4
lines changed

src/app/pages/configuracion/configuracion.ts

Lines changed: 22 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -946,6 +946,9 @@ export class Configuracion {
946946
const pdfDoc = await PDFDocument.load(existingPdfBytes);
947947
const form = pdfDoc.getForm();
948948

949+
//CustomFont para aceptar Ñ
950+
const customFont = await pdfDoc.embedFont(StandardFonts.Helvetica)
951+
949952
// Información del Prestador y el Reporte
950953
form.getTextField('Correspondiente al reporte mensual de actividades No')
951954
.setText(report.period.weekNumber.toString());
@@ -965,7 +968,8 @@ export class Configuracion {
965968
x: usarTestPdf ? 28 : 28,
966969
y: usarTestPdf ? 40 : 60,
967970
size: 12,
968-
color: rgb(0, 0, 0)
971+
color: rgb(0, 0, 0),
972+
font: customFont
969973
});
970974
}
971975

@@ -974,7 +978,8 @@ export class Configuracion {
974978
x: usarTestPdf ? 28 : 28,
975979
y: usarTestPdf ? 25 : 45,
976980
size: 12,
977-
color: rgb(0, 0, 0)
981+
color: rgb(0, 0, 0),
982+
font: customFont
978983
});
979984
}
980985

@@ -991,15 +996,19 @@ export class Configuracion {
991996
const campoHoras = `Horas por día${i + 1}`;
992997

993998
if (this.campoExiste(form, campoFecha)) {
999+
form.getTextField(campoFecha).updateAppearances(customFont)
9941000
form.getTextField(campoFecha).setText(this.formatearFechaEspanol(dia.fecha));
9951001
}
9961002
if (this.campoExiste(form, campoEntrada)) {
1003+
form.getTextField(campoEntrada).updateAppearances(customFont)
9971004
form.getTextField(campoEntrada).setText(dia.horaEntrada);
9981005
}
9991006
if (this.campoExiste(form, campoSalida)) {
1007+
form.getTextField(campoSalida).updateAppearances(customFont)
10001008
form.getTextField(campoSalida).setText(dia.horaSalida);
10011009
}
10021010
if (this.campoExiste(form, campoHoras)) {
1011+
form.getTextField(campoHoras).updateAppearances(customFont)
10031012
form.getTextField(campoHoras).setText(dia.horasPorDia);
10041013
}
10051014
} catch (error) {
@@ -1133,6 +1142,9 @@ export class Configuracion {
11331142
const pdfDoc = await PDFDocument.load(existingPdfBytes);
11341143
const form = pdfDoc.getForm();
11351144

1145+
//CustomFont para aceptar Ñ
1146+
const customFont = await pdfDoc.embedFont(StandardFonts.Helvetica)
1147+
11361148
form.getTextField('Correspondiente al reporte mensual de actividades No')
11371149
.setText(report.period.weekNumber.toString());
11381150
form.getTextField('Periodo del').setText(report.period.startDate);
@@ -1150,7 +1162,8 @@ export class Configuracion {
11501162
x: usarTestPdf ? 28 : 28,
11511163
y: usarTestPdf ? 40 : 60,
11521164
size: 12,
1153-
color: rgb(0, 0, 0)
1165+
color: rgb(0, 0, 0),
1166+
font: customFont
11541167
});
11551168
}
11561169

@@ -1159,7 +1172,8 @@ export class Configuracion {
11591172
x: usarTestPdf ? 28 : 28,
11601173
y: usarTestPdf ? 25 : 45,
11611174
size: 12,
1162-
color: rgb(0, 0, 0)
1175+
color: rgb(0, 0, 0),
1176+
font: customFont
11631177
});
11641178
}
11651179

@@ -1175,15 +1189,19 @@ export class Configuracion {
11751189
const campoHoras = `Horas por día${i + 1}`;
11761190

11771191
if (this.campoExiste(form, campoFecha)) {
1192+
form.getTextField(campoFecha).updateAppearances(customFont)
11781193
form.getTextField(campoFecha).setText(this.formatearFechaEspanol(dia.fecha));
11791194
}
11801195
if (this.campoExiste(form, campoEntrada)) {
1196+
form.getTextField(campoEntrada).updateAppearances(customFont)
11811197
form.getTextField(campoEntrada).setText(dia.horaEntrada);
11821198
}
11831199
if (this.campoExiste(form, campoSalida)) {
1200+
form.getTextField(campoSalida).updateAppearances(customFont)
11841201
form.getTextField(campoSalida).setText(dia.horaSalida);
11851202
}
11861203
if (this.campoExiste(form, campoHoras)) {
1204+
form.getTextField(campoHoras).updateAppearances(customFont)
11871205
form.getTextField(campoHoras).setText(dia.horasPorDia);
11881206
}
11891207
} catch (error) {

0 commit comments

Comments
 (0)