dim fuentes() as Ifontdisp, k as byte , Actual as single
redim fuentes(0 to 4) ' vamos a usar 5 fuentes diferentes...
fuentes(0)= LabelCabecera.font ' texto y fuente que se utiliza para el título y/o cabecera del documento
fuentes(1)= TxtParrafos.Font ' texto y fuente 'base' del documento.
fuentes(2)= LabelResalte.Font ' texto y fuente que se resalta dentro de los párrafos, típicamente será negrita, pero puede que también cambie el tamaño de la fuente y el tipo
fuente(3)= ........ etc..
'.
'.
vb.printer.font=Fuentes(1) ' fuentes(0) no se mezcla con los párrafos, por tanto se deja aparte
Ac = VB.Printer.TextHeight("Wy")
for k= 2 to ubound(fuentes) ' la fuente 1 se realiza fuera del bucle, para disponer del valor inicial de comparación, en el siguiente bloque, se muestra el caso dentro del bucle.
vb.printer.font=Fuentes(k)
Actual= VB.Printer.TextHeight("Wy")
if Actual > Ac then Ac= Actual
next
' fuentes(0) no se mezcla con los párrafos, por tanto se deja aparte
' caso donde queramos, meter el 1 dentro del bucle, conviene poner Ac a 0 por si tuviera un valor distinto de trabajo previo
Ac=0
for k= 1 to ubound(fuentes)
vb.printer.font=Fuentes(k)
Actual= VB.Printer.TextHeight("Wy")
if Actual > Ac then Ac= Actual
next