GetMissedFonts

MetaImage.GetMissedFonts method

Gibt die Liste der Schriftarten zurück, die in der Metadatei verwendet, aber nicht gefunden wurden.

public string[] GetMissedFonts()

Rückgabewert

Die Schriftartenliste

Beispiele

Das folgende Beispiel zeigt, wie Informationen zu verwendeten und fehlenden Schriftarten in WMF/EMF-Bildern gedruckt werden.

[C#]

string dir = "c:\\aspose.imaging\\net\\issues\\3544";

// Alle Schriftarten unzugänglich machen
string[] fontDirectories = Aspose.Imaging.FontSettings.GetFontsFolders();
Aspose.Imaging.FontSettings.SetFontsFolder("empty");
string[] files = new string[]
{
    "TestWmfText.wmf",
    "TestEmfFonts.emf",
    "TestEmfPlusFonts.emf",
};

try
{
    foreach (string file in files)
    {
        System.Console.WriteLine("========== {0} ==========", file);
        using (Aspose.Imaging.FileFormats.Emf.MetaImage image = (Aspose.Imaging.FileFormats.Emf.MetaImage)Aspose.Imaging.Image.Load(System.IO.Path.Combine(dir, file)))
        {
            string[] used = image.GetUsedFonts();
            foreach (string it in used)
            {
                System.Console.WriteLine("Used font: " + it);
            }

            string[] missed = image.GetMissedFonts();
            foreach (string it in missed)
            {
                System.Console.WriteLine("Missed font: " + it);
            }

            int ui = 0, mi = 0;
            foreach (string it in used)
            {
                if (it.Contains("Times"))
                {
                    ui++;
                    continue;
                }

                if (used[ui] != missed[mi])
                {
                    throw new System.Exception("Font lists must be equal!");
                }

                ui++; mi++;
            }
        }
    }
}
finally
{
    Aspose.Imaging.FontSettings.SetFontsFolders(fontDirectories, true);
}

// Das STDOUT-Log könnte so aussehen:
//========== TestWmfText.wmf ==========
//Verwendete Schriftart: Garamond
//Verwendete Schriftart: Arial
//Verwendete Schriftart: Bookman Old Style
//Verwendete Schriftart: Comic Sans MS
//Verwendete Schriftart: Courier
//Verwendete Schriftart: Courier New
//Verwendete Schriftart: Impact
//Verwendete Schriftart: Modern
//Verwendete Schriftart: MS Sans Serif
//Verwendete Schriftart: MS Serif
//Verwendete Schriftart: Kleine Schriftarten
//Verwendete Schriftart: Symbol
//Verwendete Schriftart: Tahoma
//Verwendete Schriftart: Times New Roman
//Verwendete Schriftart: Verdana
//Verwendete Schriftart: Wingdings
//Verpasste Schriftart: Garamond
//Verpasste Schriftart: Arial
//Verpasste Schriftart: Bookman Old Style
//Verpasste Schriftart: Comic Sans MS
//Verpasste Schriftart: Courier
//Verpasste Schriftart: Courier New
//Verpasste Schriftart: Impact
//Verpasste Schriftart: Modern
//Verpasste Schriftart: MS Sans Serif
//Verpasste Schriftart: MS Serif
//Verpasste Schriftart: Kleine Schriftarten
//Verpasste Schriftart: Symbol
//Verpasste Schriftart: Tahoma
//Verpasste Schriftart: Verdana
//Verpasste Schriftart: Wingdings
//========== TestEmfFonts.emf ==========
//Verwendete Schriftart: Arial
//Verwendete Schriftart: Verdana
//Verwendete Schriftart: Times New Roman
//Verwendete Schriftart: Symbol
//Verpasste Schriftart: Arial
//Verpasste Schriftart: Verdana
//Verpasste Schriftart: Symbol
//========== TestEmfPlusFonts.emf ==========
//Verwendete Schriftart: MICROSOFT SANS SERIF
//Verpasste Schriftart: MICROSOFT SANS SERIF

Siehe auch