Charger des documents de polices à partir d’un tableau d’octets

Solution API .NET pour charger les polices TTF, WOFF, EOT, Type 1 et CFF à partir d’un MemoryStream.

 

Aspose.Font API Solution dispose d'une riche fonctionnalité pour travailler avec les polices. Conversion, manipulations avec des glyphes, détection de symboles latins, et bien d'autres. L'étape importante dans les manipulations de polices est le chargement des fichiers de polices, afin que vous puissiez les utiliser par la suite.

Cette page décrit l’option permettant de charger des fichiers de polices à partir de flux, mais l’ensemble des fonctionnalités est décrit en détail dans le Comment charger des fichiers ? article. Vous y trouverez beaucoup plus d’exemples de code C#, et découvrirez les objets et les paramètres requis pour le chargement des polices.

La solution prend en charge les formats de police suivants : TrueType (police unique), TrueType (collection de polices), Web Open Font Format, Web Open Font Format version 2.0, Embedded OpenType, Adobe Type 1 font (pfa, pfb, afm, pfm) et Format de police compact. Les extraits de code ci-joints montrent le chargement de polices Type 1 et CFF à partir d'un tableau d'octets.

Pour charger les polices, nous avons besoin de :

  • Aspose.Font pour l'API .NET qui est une API de manipulation et de conversion de documents riche en fonctionnalités, puissante et facile à utiliser pour la plate-forme C#.

  • Ouvrez le gestionnaire de packages NuGet, recherchez Aspose.Font et installez-le. Vous pouvez également utiliser la commande suivante à partir de la console du gestionnaire de packages.

Package Manager Console Command


    PM> Install-Package Aspose.Font

Étapes pour charger Compact Font Format (CFF) à partir d'un tableau d'octets/MemoryStream à l'aide de C# :

  1. Définissez le tableau d’octets pour charger la police à l’aide de la classe FontFileDefinition .
  2. Utilisez la méthode statique Open() de l’objet Aspose.Font.Sources.FontDefinition pour créer l’objet FontDefinition souhaité.
  3. Utilisez l’objet de type ByteContentStreamSource pour spécifier le format de police CFF.
  4. Transmettez la FontDefinition appropriée à Aspose.Font.Font.Open() Méthode.

Code C# pour charger les polices à partir du flux

    using Aspose.Font;
    using Aspose.Font.Sources;
    using Aspose.Font.Cff;
    //byte array to load Font from
    byte[] fontMemoryData;

    FontDefinition fd = FontDefinition.Open(new ByteContentStreamSource(fontMemoryData), 
                FontType.CFF);
    CffFont cffFont = Aspose.Font.Font.Open(fd) as CffFont;

Étapes pour charger la police Type 1 à partir d'un tableau d'octets/MemoryStream à l'aide de C# :

  1. Définissez le tableau d’octets pour charger la police Type 1 à l’aide de la classe FontFileDefinition.
  2. Utilisez la méthode statique Open() de l’objet Aspose.Font.Sources.FontDefinition pour créer l’objet FontDefinition souhaité.
  3. Utilisez l’objet de type ByteContentStreamSource pour spécifier le format de police Type 1.
  4. Passez la FontDefinition appropriée à la méthode Aspose.Font.Font.Open().

Code C# pour charger les polices à partir du flux

    using Aspose.Font;
    using Aspose.Font.Sources;
    using Aspose.Font.Type1;
    //byte array to load Font from
    byte[] fontMemoryData;

    FontDefinition fd = FontDefinition.Open(new ByteContentStreamSource(fontMemoryData), 
                FontType.Type1);
    Type1Font font = Aspose.Font.Font.Open(fd) as Type1Font;



FAQ

1. Quels sont les paramètres pour charger les polices par programmation ?

Pour un chargement correct des polices, vous devez connaître deux paramètres clés. Ils sont le format de police et le stockage.

2. Où se trouvent les polices sur mon ordinateur ?

Pour voir les polices disponibles sur votre ordinateur, allez dans le répertoire C:>Windows>Fonts. Vous pourrez y gérer vos polices.

3. Comment charger une police depuis un stream ?

Définissez le tableau de bain à l’aide de FontFileDefinition et créez l’objet à l’aide de la méthode Open(). Spécifiez le format de police. Terminez le chargement en utilisant la méthode Aspose.Font.Font.Open().