Obtener Advertencias por Sustitución de Fuentes al Renderizar un Archivo de Excel

La captura de pantalla a continuación muestra el archivo de Excel fuente utilizado en el siguiente código. Tiene algo de texto en las celdas A6 y A7 en fuentes que no son renderizadas correctamente por Microsoft Excel.

todo:image_alt_text

Aspose.Cells sustituirá las fuentes en las celdas A6 y A7 con fuentes adecuadas como se muestra a continuación.

todo:image_alt_text

Descargar Archivo Fuente y PDF de Salida

Puedes descargar el archivo de Excel fuente y el PDF de salida desde los siguientes enlaces

El siguiente código implementa el IWarningCallback y establece el método PdfSaveOptions.setWarningCallback() con la interfaz implementada. Ahora, cada vez que se sustituya alguna fuente en cualquier celda, Aspose.Cells emitirá una advertencia dentro del método 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);

}

Salida de Advertencias

Después de convertir el archivo fuente, las siguientes advertencias se emiten en la consola de depuración:

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 ].