Få varningar för teckensnittsersättning när du renderar Excel-fil

Skärmdumpen nedan visar källfilen för Excel som används i följande kod. Den har en del text i cellerna A6 och A7 i teckensnitt som inte renderas bra av Microsoft Excel.

todo:image_alt_text

Aspose.Cells kommer att ersätta typsnitten i cellerna A6 och A7 med lämpliga typsnitt som visas nedan.

todo:image_alt_text

Ladda ner källfil och utdata PDF

Du kan ladda ner källfilen för Excel och utgången PDF från följande länkar

Följande kod implementerarIWarningCallback och ställ inPdfSaveOptions.setWarningCallback() metod med det implementerade gränssnittet. Nu, när ett teckensnitt kommer att ersättas i en cell, kommer Aspose.Cells att avge en varning i metoden 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);

}

Utmatning av varningar

Efter konvertering av källfilen matas följande varningar till felsökningskonsolen:

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