Può darsi ma forse posso aiutarti lo stesso con un aneddoto che mi è sucecsso tempo fa. In sostanza dovevo stampare delle etichette prese da un DB. Al che faccio la stampa unione e fin qui ci siamo. Poi guardo l'anteprima ed è perfetta. Stampo una pagina di prova e tutte le etichette stanno in uno spazio molto più ristretto. Il mio problema l'ho risolto con un'impostazione (mi pare Zoom), da modificare al momento stesso della stampa.
Ma ho il timore che quanto ho detto non centri nulla.
Forse per il tuo caso conviene usare il DOM di javascript per percorrere l'html e per riscrivere runtime le dimensioni del font.