Obtenir des avertissements pour la substitution de police lors du rendu de fichiers Excel en PDF

La capture d’écran ci-dessous montre le fichier Excel source utilisé dans le code suivant. Il contient du texte dans les cellules A6 et A7 dans des polices qui ne sont pas bien rendues par Microsoft Excel.

todo:image_alt_text

Aspose.Cells va substituer les polices dans les cellules A6 et A7 par des polices appropriées comme indiqué ci-dessous.

todo:image_alt_text

Télécharger le fichier source et le PDF de sortie

Vous pouvez télécharger le fichier Excel source et le PDF de sortie à partir des liens suivants

Le code suivant implémente la méthode IWarningCallback et définit la méthode PdfSaveOptions.setWarningCallback() avec l’interface implémentée. Désormais, chaque fois qu’une police sera remplacée dans une cellule, Aspose.Cells déclenchera une alerte à l’intérieur de la méthode WarningCallback.warning().

 public class WarningCallback implements IWarningCallback {

    @Override

    public void warning(WarningInfo info) {

        if(info.getWarningType() == WarningType.FONT_SUBSTITUTION)

        {

            System.out.println("WARNING INFO: " + info.getDescription());

        }

    }

}

//........

//........

static void Run() throws Exception

{

    Workbook workbook = new Workbook("source.xlsx");

    PdfSaveOptions options = new PdfSaveOptions();

    options.setWarningCallback(new WarningCallback());

    workbook.save("output.pdf", options);

}

Sortie des Avertissements

Après la conversion du fichier source, les avertissements suivants sont affichés dans la console de débogage :

WARNING INFO: Font substitution: Font [ Athene Logos; Regular ] has been substituted in Cell [ A6 ] in Sheet [ Sheet1 ].

WARNING INFO: Font substitution: Font [ B Traffic; Regular ] has been substituted in Cell [ A7 ] in Sheet [ Sheet1 ].