FontSettings.SetFontReplacements

FontSettings.SetFontReplacements method

Définit la liste de remplacement des polices. Si la police n’est pas autorisée, elle sera remplacée. La première police de la liste sera utilisée en premier. Si elle est également restreinte, la police suivante sera sélectionnée dans la liste. Si la police n’a pas de remplacements ou si tous les remplacements ne sont pas autorisés, la première police autorisée de la liste des polices autorisées sera utilisée. S’il n’y a pas de polices autorisées et disponibles, la bibliothèque le fera. essayez d’utiliser la police par défaut du système même si elle n’est pas autorisée.

public static void SetFontReplacements(string fontToReplace, string[] fontNames)
ParamètreTaperLa description
fontToReplaceStringLa police à remplacer.
fontNamesString[]Noms des polices de remplacement par ordre de similarité.

Exceptions

exceptioncondition
ArgumentExceptionLa longueur du tableau de polices et le tableau des différences de polices doivent être égaux

Exemples

Le code suivant montre la possibilité de limiter par programmation les polices à l’aide de.

[C#]

string srcFile = "fonts_com_updated.psd";
string output = "etalon_fonts_com_updated.psd.png";

try
{
    var fontList = new string[] { "Courier New", "Webdings", "Bookman Old Style" };
    FontSettings.SetAllowedFonts(fontList);

    var myriadReplacement = new string[] { "Courier New", "Webdings", "Bookman Old Style" };
    var calibriReplacement = new string[] { "Webdings", "Courier New", "Bookman Old Style" };
    var arialReplacement = new string[] { "Bookman Old Style", "Courier New", "Webdings" };
    var timesReplacement = new string[] { "Arial", "NotExistedFont", "Courier New" };

    FontSettings.SetFontReplacements("MyriadPro-Regular", myriadReplacement);
    FontSettings.SetFontReplacements("Calibri", calibriReplacement);
    FontSettings.SetFontReplacements("Arial", arialReplacement);
    FontSettings.SetFontReplacements("Times New Roman", timesReplacement);

    using (PsdImage image = (PsdImage)Image.Load(srcFile))
    {
        image.Save(output, new PngOptions() { ColorType = PngColorType.TruecolorWithAlpha });
    }
}
finally
{
    FontSettings.SetAllowedFonts(null);
    FontSettings.ClearFontReplacements();
}

Voir également