Obtenga advertencias para la sustitución de fuentes mientras procesa un archivo de Excel
A veces, al renderizar Microsoft archivos de Excel a PDF, Aspose.Cells sustituye las fuentes. Aspose.Cells proporciona una función que les permite a los desarrolladores saber que una fuente en particular ha sido sustituida al activar una advertencia. Esta es una característica útil que puede ayudarlo a identificar por qué Aspose.Cells representado PDF es diferente al archivo de Excel real y luego puede tomar las medidas apropiadas. Por ejemplo, puede instalar las fuentes que faltan para que los resultados de la representación tengan el mismo aspecto.
Si desea obtener las advertencias para la sustitución de fuentes mientras procesa un archivo de Excel en PDF, implemente la interfaz IWarningCallback y configure el método PdfSaveOptions.setWarningCallback() con su interfaz implementada.
La siguiente captura de pantalla muestra el archivo fuente de Excel utilizado en el siguiente código. Tiene algo de texto en las celdas A6 y A7 en fuentes que Microsoft Excel no representa bien.
Aspose.Cells sustituirá las fuentes en las celdas A6 y A7 con fuentes adecuadas como se muestra a continuación.
Descargar archivo fuente y salida PDF
Puede descargar el archivo fuente de Excel y la salida PDF desde los siguientes enlaces
El siguiente código implementa elIAdvertenciaDevolución de llamada y establecer elPdfSaveOptions.setWarningCallback() método con la interfaz implementada. Ahora, cada vez que se sustituya una fuente en cualquier celda, Aspose.Cells activará 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 de origen, se envían las siguientes advertencias a 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 ].