Получать предупреждения о замене шрифтов при рендеринге Excel файла с помощью Golang через C++
Для получения предупреждений о замещениях шрифтов при преобразовании Excel в PDF реализуйте интерфейс IWarningCallback и установите свойство PdfSaveOptions.WarningCallback вашим реализованным интерфейсом.
Скриншот ниже показывает исходный файл Excel, который мы будем использовать в следующем коде. В нем есть текст в ячейках A6 и A7 шрифтом, который неправильно отображается в Microsoft Excel.
| Не все шрифты отображаются правильно |
|---|
![]() |
Aspose.Cells будет заменять шрифты в ячейках A6 и A7 на подходящие шрифты, как показано ниже.
| Замененные шрифты |
|---|
![]() |
Скачать исходный файл и PDF-файл
Вы можете скачать исходный файл Excel и итоговый PDF по следующим ссылкам:
Код
Следующий код реализует IWarningCallback и устанавливает свойство PdfSaveOptions.WarningCallback в реализованный интерфейс. Теперь, если любой шрифт будет заменен в любой ячейке, Aspose.Cells вызовет предупреждение внутри метода WarningCallback.Warning().
Вывод
После преобразования исходного файла Excel в PDF, предупреждения выводятся в отладочной консоли следующим образом:
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 ].Workbook.CalculateFormula прямо перед рендерингом таблицы в формат PDF. Это обеспечит пересчет значений, зависящих от формул, и правильное отображение значений в PDF.

