有一个pdf文件,调用save方法后,转出来的word文件发现部分文字缺失,请问如何判断pdf文件里的字体系统没有安装?我试了如下的代码,均判断不到字体缺失:
public static bool CheckPageFont(Page p, ref string font_name)
{
// ensure all fonts declared on page resources are embedded
// note that if fonts are declared on form resources they are not accessible from page resources
if (p.Resources == null)
{
return true;
}
foreach (var font in p.Resources.Fonts)
{
if (!font.IsAccessible)
{
font_name = font.FontName;
return false;
}
if (!font.IsEmbedded)
{
font.IsEmbedded = true;
}
}
return true;
}
public static bool CheckDocFont(Document doc, ref string font_name)
{
// ensure all fonts declared on page resources are embedded
// note that if fonts are declared on form resources they are not accessible from page resources
Font[] fonts = doc.FontUtilities.GetAllFonts();
foreach (var font in fonts)
{
if (!font.IsAccessible)
{
font_name = font.FontName;
return false;
}
if (!font.IsEmbedded)
{
font.IsEmbedded = true;
}
}
return true;
}