Licence Aspose PDF

Limitation d’une version d’évaluation

Nous voulons que nos clients testent nos composants en profondeur avant d’acheter, donc la version d’évaluation vous permet de l’utiliser comme vous le feriez normalement.

  • PDF créé avec un filigrane d’évaluation. La version d’évaluation de Aspose.PDF for .NET offre une fonctionnalité complète du produit, mais toutes les pages des documents PDF générés sont marquées avec le texte “Évaluation uniquement. Créé avec Aspose.PDF. Copyright 2002-2025 Aspose Pty Ltd.” en haut.

  • Limiter le nombre de pages pouvant être traitées. Dans la version d’évaluation, vous ne pouvez traiter que les quatre premières pages d’un document.

Si vous souhaitez tester Aspose.PDF for .NET sans les limitations de la version d’évaluation, vous pouvez également demander une licence temporaire de 30 jours. Veuillez vous référer à Comment obtenir une licence temporaire ?

Licence classique

La licence peut être chargée à partir d’un fichier ou d’un objet de flux. La manière la plus simple de définir une licence est de placer le fichier de licence dans le même dossier que le fichier Aspose.PDF.dll et de spécifier le nom du fichier sans chemin, comme indiqué dans l’exemple ci-dessous.

Si vous utilisez un autre composant Aspose pour .NET avec Aspose.PDF for .NET, veuillez spécifier l’espace de noms pour la licence comme Aspose.Pdf.License.

Chargement d’une licence à partir d’un fichier

La manière la plus simple d’appliquer une licence est de placer le fichier de licence dans le même dossier que le fichier Aspose.PDF.dll et de spécifier simplement le nom du fichier sans chemin.

Lorsque vous appelez la méthode SetLicense, le nom de la licence que vous passez doit être celui de votre fichier de licence. Par exemple, si vous changez le nom du fichier de licence en “Aspose.PDF.lic.xml”, passez ce nom de fichier à la méthode Pdf.SetLicense(…).

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetLicenseExample()
{
    // Initialize license object
    var license = new Aspose.Pdf.License();
    try
    {
        // Set license
        license.SetLicense("Aspose.Pdf.lic");
    }
    catch (Exception)
    {
        // Something went wrong
        throw;
    }
    Console.WriteLine("License set successfully.");
}

Chargement de la licence à partir d’un objet de flux

L’exemple suivant montre comment charger une licence à partir d’un flux.

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetLicenseFromStream()
{
    // Initialize license object
    var license = new Aspose.Pdf.License();
    // Load license from the file stream
    var myStream = new FileStream(
            "Aspose.Pdf.lic",
            FileMode.Open);
    // Set license
    license.SetLicense(myStream);
    Console.WriteLine("License set successfully.");
}

Licence à la consommation

Aspose.PDF permet aux développeurs d’appliquer une clé à la consommation. Le mécanisme de licence à la consommation sera utilisé avec la méthode de licence existante. Les clients qui souhaitent être facturés en fonction de l’utilisation des fonctionnalités de l’API peuvent utiliser la licence à la consommation. Pour plus de détails, veuillez vous référer à la section FAQ sur la licence à la consommation. Ce guide fournit des meilleures pratiques pour une mise en œuvre fluide et pour éviter les interruptions dues aux changements de statut de licence.

La classe “Metered” est utilisée pour appliquer des clés à la consommation. Voici un exemple de code démontrant comment définir des clés publiques et privées à la consommation.

Pour plus de détails, veuillez vous référer à la section FAQ sur la licence à la consommation.

Méthodes de licence à la consommation

Pour appliquer la licence à la consommation, utilisez la méthode SetMeteredKey pour activer la licence à la consommation en fournissant vos clés publiques et privées. Cela doit être fait une fois lors de l’initialisation de l’application pour garantir une licence appropriée.

Exemple :

 var metered = new Aspose.Pdf.Metered();
 metered.SetMeteredKey("your-public-key", "your-private-key");

Vérifier l’état de la licence utilise IsMeteredLicensed() pour vérifier si la licence à la consommation est active.

Exemple :

bool isLicensed = Aspose.Pdf.License.IsMeteredLicensed();
if (!isLicensed) 
{
    metered.SetMeteredKey("your-public-key", "your-private-key");
}

La méthode Metered.GetConsumptionCredit() est utilisée pour obtenir des informations sur les crédits de consommation. La méthode Metered.GetConsumptionQuantity() est utilisée pour obtenir des informations sur la taille du fichier de consommation.

Exemple :

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetMeteredLicense()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments();
    // Set metered public and private keys
    var metered = new Aspose.Pdf.Metered();
    // Access the setMeteredKey property and pass public and private keys as parameters
    metered.SetMeteredKey("your public key", "your private key");

    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
       // Add five pages
       AddPages(document, 5);
       // Save the document
       document.Save(dataDir + "output.pdf")
    }
}

private static void AddPages(Document document, int n)
{
    for(int i = 0; i < n; i++)
    {
        document.Pages.Add();
    }
}   

Meilleures pratiques pour la licence à la consommation

✅ Approche recommandée : Modèle Singleton Pour garantir une configuration de licence stable :

  • Appliquez la licence une fois au démarrage de l’application.
  • Utilisez un modèle singleton (ou une approche similaire) pour créer et réutiliser l’instance de licence à la consommation.
  • Vérifiez périodiquement l’état de la licence en utilisant IsMeteredLicensed(). Réappliquez la licence uniquement si elle devient invalide.
  • Si cela est correctement mis en œuvre, la licence reste valide pendant 24 heures même si le serveur de licence est temporairement indisponible.

Exemple : Mise en œuvre du Singleton

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
public class AsposeLicenseManager
{
    private static AsposeLicenseManager _instance;
    private static readonly object _lock = new object();
    private Aspose.Pdf.Metered _metered;

    private AsposeLicenseManager()
    {
        _metered = new Aspose.Pdf.Metered();
        _metered.SetMeteredKey("your-public-key", "your-private-key");
    }

    public static AsposeLicenseManager Instance
    {
        get
        {
            lock (_lock)
            {
                if (_instance == null)
                {
                    _instance = new AsposeLicenseManager();
                }
                return _instance;
            }
        }
    }

    public void ValidateLicense()
    {
        if (!Aspose.Pdf.License.IsMeteredLicensed())
        {
        _metered.SetMeteredKey("your-public-key", "your-private-key");
        }
    }
}

❌ Erreurs courantes à éviter :

  • Applications fréquentes de la licence
  • Ne créez pas une nouvelle instance de licence à la consommation pour chaque opération.
  • Si le serveur de licence est inaccessible pendant l’initialisation, la licence peut revenir en mode d’évaluation.
  • Ne pas appliquer la licence de manière répétée pour chaque opération.
  • Des applications fréquentes de la licence peuvent entraîner un retour en mode d’essai si le serveur de licence est temporairement indisponible.

Résumé :

✅ Définissez la licence à la consommation une fois au démarrage de l’application. ✅ Utilisez un modèle singleton pour gérer une seule instance. ✅ Vérifiez périodiquement et réappliquez la licence si nécessaire. ❌ Évitez les applications fréquentes de la licence pour prévenir le retour en mode d’essai. En suivant ces meilleures pratiques, vous garantissez une utilisation fluide et ininterrompue d’Aspose.PDF avec la licence à la consommation.

Si la licence a été initialisée, alors tant que cet objet “vit”, même si la connexion au serveur de licence est perdue pour une raison quelconque, la licence sera considérée comme active pendant 7 jours supplémentaires. Si vous initialisez une licence chaque fois que vous devez faire quelque chose et qu’il n’y a pas de connexion au serveur au moment de l’initialisation, alors la licence passera en mode d’évaluation. Il convient de souligner que si un utilisateur a initialisé une licence, alors tant que cet objet “vit”, même si la connexion au serveur de licence est perdue pour une raison quelconque, la licence sera considérée comme active pendant 24 heures supplémentaires. Si vous initialisez une licence chaque fois que vous devez faire quelque chose et qu’il n’y a pas de connexion au serveur au moment de l’initialisation, alors la licence passera en mode d’évaluation.

Veuillez noter que les applications COM qui travaillent avec Aspose.PDF for .NET doivent également utiliser la classe License.

Un point qui nécessite une considération : Veuillez noter que les ressources intégrées sont incluses dans l’assemblage de la manière dont elles sont ajoutées, c’est-à-dire que si vous ajoutez un fichier texte en tant que ressource intégrée dans l’application et ouvrez l’EXE résultant dans le bloc-notes, vous verrez le contenu exact du fichier texte. Donc, lors de l’utilisation du fichier de licence en tant que ressource intégrée, quiconque peut ouvrir le fichier exe dans un éditeur de texte simple et voir/extraire le contenu de la licence intégrée.

Par conséquent, afin de mettre une couche de sécurité supplémentaire lors de l’intégration de la licence avec l’application, vous pouvez compresser/chiffrer la licence et après cela, vous pouvez l’intégrer dans l’assemblage. Supposons que nous ayons le fichier de licence Aspose.PDF.lic, alors faisons Aspose.PDF.zip avec le mot de passe test et intégrons ce fichier zip dans la solution. Le code suivant peut être utilisé pour initialiser la licence :

// For complete examples and data files, visit https://github.com/aspose-pdf/Aspose.PDF-for-.NET
private static void SetLicenseFromStream()
{
    // The path to the documents directory
    var dataDir = RunExamples.GetDataDir_AsposePdf_WorkingDocuments();
    var license = new Aspose.Pdf.License();
    license.SetLicense(GetSecureLicenseFromStream());
    // Open PDF document
    using (var document = new Aspose.Pdf.Document(dataDir + "input.pdf"))
    {
        // Get the page count of document
        Console.WriteLine(document.Pages.Count);
    }
}

private static Stream GetSecureLicenseFromStream()
{
    var assembly = Assembly.GetExecutingAssembly();
    var memoryStream = new MemoryStream();
    using (var zipToOpen = assembly.GetManifestResourceStream("Aspose.Pdf.Examples.License.Aspose.PDF.zip"))
    {
        using (ZipArchive archive = new ZipArchive(zipToOpen ?? throw new InvalidOperationException(), ZipArchiveMode.Read))
        {
            var unpackedLicense  = archive.GetEntry("Aspose.PDF.lic");
            unpackedLicense?.Open().CopyTo(memoryStream);
        }
    }

    memoryStream.Position = 0;
    return memoryStream;
}