Comment migrer de GrabzIt à IronPDF en C#
La migration de GrabzItversIronPDFtransforme votre flux de travail PDF .NET d'un service de capture d'écran basé sur le cloud avec une complexité de rappel à une bibliothèque en cours de processus qui génère de véritables PDF vectoriels avec du texte sélectionnable et consultable. Ce guide fournit un chemin de migration complet, étape par étape, qui élimine les dépendances de serveurs externes, les gestionnaires de rappel et la tarification par capture pour les développeurs .NET professionnels.
Pourquoi migrer de GrabzItà IronPDF
Le problème de l'architecture de GrabzIt
GrabzIt est un service de capture d'écran et de PDF basé sur le cloud. Bien qu'il soit pratique pour les intégrations rapides, il présente des limites architecturales fondamentales :
-
PDF basés sur des images : GrabzItcrée des PDF basés sur des captures d'écran où le texte n'est pas sélectionnable — essentiellement des images enveloppées au format PDF. Il s'agit d'une limite fondamentale pour tout cas d'utilisation nécessitant la manipulation de texte ou l'accessibilité.
-
Traitement externe : Tout le contenu est envoyé aux serveurs de GrabzItpour traitement, ce qui soulève des problèmes de confidentialité et de conformité pour les données sensibles. Votre contenu HTML quitte votre infrastructure.
-
Complexité des rappels : GrabzItutilise un modèle de rappel asynchrone qui nécessite une infrastructure de gestion des webhooks. Vous devez mettre en place des points de terminaison pour recevoir les résultats, ce qui ajoute à la complexité de l'architecture.
-
Tarification par capture : Le modèle de paiement à l'utilisation peut devenir coûteux à grande échelle. Chaque génération de PDF a un coût.
-
Pas de recherche de texte : les fichiers PDF étant basés sur des images, la recherche et l'extraction de texte ne fonctionnent pas sans OCR, ce qui représente une étape et un coût supplémentaires.
-
Taille des fichiers plus importante : les PDF basés sur des images sont nettement plus volumineux que les PDF basés sur des vecteurs, souvent 5 à 10 fois plus volumineux.
-
Dépendance au réseau : Impossible de générer des PDF sans connexion Internet, ce qui rend les scénarios hors ligne impossibles.
- Latence : Chaque génération de PDF nécessite un aller-retour réseau vers des serveurs externes, ajoutant une latence de 500 ms à 5 s.
Comparaison GrabzItvs IronPDF
| Aspect | GrabzIt | IronPDF |
|---|---|---|
| Type de PDF | Basée sur l'image (capture d'écran) | True vector PDF |
| Sélection du texte | Pas possible | Sélection du texte intégral |
| Recherche de texte | Nécessite une OCR | Recherche native |
| Lieu de traitement | Serveurs externes | Local/processus |
| Confidentialité | Données envoyées à l'extérieur | Les données restent locales |
| Temps de latence | Trajet aller-retour sur le réseau (500ms-5s) | Traitement local (~100ms) |
| Modèle de tarification | Par capture | Licence par développeur |
| Capacité hors ligne | Non | Oui |
| Taille du fichier | Grand (données d'image) | Petit (données vectorielles) |
| Rappel obligatoire | Oui (asynchrone) | Non (sync/async) |
| Support CSS/JS | Limité | Moteur Chromium complet |
Pour les équipes qui prévoient l'adoption de .NET 10 et C# 14 jusqu'en 2025 et 2026,IronPDFconstitue une base à l'épreuve du temps avec un traitement local qui s'intègre nativement aux modèles .NET modernes.
Évaluation de la complexité de la migration
Estimation de l'effort par fonctionnalité
| Fonction | Complexité de la migration |
|---|---|
| HTML vers PDF | Très faible |
| URL vers PDF | Très faible |
| HTML vers image | Faible |
| Taille de la page/marges | Faible |
| Manipulateurs de rappel | Faible |
| Filigranes | Faible |
| En-têtes/Pieds de page | Moyen |
| Clés d'authentification | Très faible |
Changement de paradigme
Le Shift fondamental de cette migration GrabzItréside dans le passage d'un traitement cloud asynchrone basé sur des rappels à une génération synchrone en interne :
GrabzIt : Envoyer du HTML → Attendre le rappel → Récupérer le résultat du serveur
IronPDF : Rendre HTML → Obtenir le PDF immédiatement
Avant de commencer
Prérequis
- Version .NET :IronPDFprend en charge .NET Framework 4.6.2+ et .NET Core 3.1+ / .NET 5/6/7/8/9+.
- Clé de licence : Obtenez votre clé de licenceIronPDFsur IronPDF
- Planifier la mise hors service de l'infrastructure : documenter les gestionnaires de rappel et les points de terminaison webhook pour la mise hors service
Identifier toutes les utilisations de GrabzIt
# Find GrabzItclient usage
grep -r "GrabzItClient\|GrabzIt\." --include="*.cs" .
# Find callback handlers
grep -r "GrabzIt\|grabzit" --include="*.ashx" --include="*.aspx" --include="*.cs" .
# Find configuration
grep -r "APPLICATION_KEY\|APPLICATION_SECRET\|grabzit" --include="*.config" --include="*.json" .
# Find GrabzItclient usage
grep -r "GrabzItClient\|GrabzIt\." --include="*.cs" .
# Find callback handlers
grep -r "GrabzIt\|grabzit" --include="*.ashx" --include="*.aspx" --include="*.cs" .
# Find configuration
grep -r "APPLICATION_KEY\|APPLICATION_SECRET\|grabzit" --include="*.config" --include="*.json" .
Modifications du paquet NuGet
# Remove GrabzIt
dotnet remove package GrabzIt
# Install IronPDF
dotnet add package IronPdf
# Remove GrabzIt
dotnet remove package GrabzIt
# Install IronPDF
dotnet add package IronPdf
Migration rapide
Étape 1 : Mise à jour de la configuration de la licence
Avant (GrabzIt):
GrabzIt requiert une clé et un secret d'application pour chaque instanciation du client :
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
Après (IronPDF):
// Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";
// Then create renderer without credentials
var renderer = new ChromePdfRenderer();
// Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY";
// Then create renderer without credentials
var renderer = new ChromePdfRenderer();
' Set once at application startup
IronPdf.License.LicenseKey = "YOUR-IRONPDF-LICENSE-KEY"
' Then create renderer without credentials
Dim renderer As New ChromePdfRenderer()
Étape 2 : mise à jour des importations de l'espace de noms
// Before (GrabzIt)
using GrabzIt;
using GrabzIt.Parameters;
// After (IronPDF)
using IronPdf;
// Before (GrabzIt)
using GrabzIt;
using GrabzIt.Parameters;
// After (IronPDF)
using IronPdf;
Imports IronPdf
Référence API complète
Mappage de GrabzItClient vers IronPDF
| Méthode GrabzIt | Équivalent d'IronPDF |
|---|---|
new GrabzItClient(key, secret) |
new ChromePdfRenderer() |
HTMLToPDF(html) |
renderer.RenderHtmlAsPdf(html) |
URLToPDF(url) |
renderer.RenderUrlAsPdf(url) |
HTMLToImage(html) |
pdf.ToBitmap() |
Save(callbackUrl) |
pdf.SaveAs(path) |
SaveTo(filePath) |
pdf.SaveAs(filePath) |
GetResult(id) |
N/A |
GetStatus(id) |
N/A |
Mappage des options PDF aux options de rendu
| GrabzItPDFOptions | Propriété d'IronPDF |
|---|---|
PageSize (A4, Lettre) |
RenderingOptions.PaperSize |
CustomId |
N/A |
MarginTop |
RenderingOptions.MarginTop |
MarginBottom |
RenderingOptions.MarginBottom |
ImageOptions versIronPDFMapping
| GrabzItImageOptions | Équivalent d'IronPDF |
|---|---|
Format (png, jpg) |
bitmap.Save(path, ImageFormat.Png) |
Width |
RenderingOptions.ViewPortWidth |
Height |
RenderingOptions.ViewPortHeight |
Exemples de migration de code
Exemple 1 : Conversion HTML vers PDF
Avant (GrabzIt):
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new PDFOptions();
options.CustomId = "my-pdf";
grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options);
grabzIt.SaveTo("output.pdf");
}
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new PDFOptions();
options.CustomId = "my-pdf";
grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options);
grabzIt.SaveTo("output.pdf");
}
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System
Module Program
Sub Main()
Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
Dim options As New PDFOptions()
options.CustomId = "my-pdf"
grabzIt.HTMLToPDF("<html><body><h1>Hello World</h1></body></html>", options)
grabzIt.SaveTo("output.pdf")
End Sub
End Module
Après (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
pdf.SaveAs("output.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
pdf.SaveAs("output.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>")
pdf.SaveAs("output.pdf")
End Sub
End Class
La différence est substantielle : GrabzItnécessite des identifiants API (YOUR_APPLICATION_KEY, YOUR_APPLICATION_SECRET), crée un objet PDFOptions avec un ID personnalisé, et le résultat est un PDF basé sur une image envoyé via des serveurs externes.IronPDFgénère localement un véritable PDF vectoriel avec du texte sélectionnable, sans identifiants, sans appels réseau, sans rappels. Voir la documentation HTML vers PDF pour des options de rendu supplémentaires.
Exemple 2 : Conversion d'une URL en PDF
Avant (GrabzIt):
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new PDFOptions();
options.PageSize = PageSize.A4;
grabzIt.URLToPDF("https://www.example.com", options);
grabzIt.SaveTo("webpage.pdf");
}
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new PDFOptions();
options.PageSize = PageSize.A4;
grabzIt.URLToPDF("https://www.example.com", options);
grabzIt.SaveTo("webpage.pdf");
}
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System
Module Program
Sub Main()
Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
Dim options As New PDFOptions()
options.PageSize = PageSize.A4
grabzIt.URLToPDF("https://www.example.com", options)
grabzIt.SaveTo("webpage.pdf")
End Sub
End Module
Après (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
pdf.SaveAs("webpage.pdf");
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderUrlAsPdf("https://www.example.com");
pdf.SaveAs("webpage.pdf");
}
}
Imports IronPdf
Imports System
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderUrlAsPdf("https://www.example.com")
pdf.SaveAs("webpage.pdf")
End Sub
End Class
GrabzIt nécessite la configuration de PageSize.A4 via l'objet d'options et l'authentification auprès de serveurs externes. La méthode RenderUrlAsPdf() d'IronPDF accepte directement l'URL et la rend localement à l'aide d'un moteur Chromium complet avec prise en charge complète de CSS et JavaScript . En savoir plus sur la conversion d'URL en PDF.
Exemple 3 : Conversion de HTML en image
Avant (GrabzIt):
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new ImageOptions();
options.Format = ImageFormat.png;
options.Width = 800;
options.Height = 600;
grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options);
grabzIt.SaveTo("output.png");
}
}
// NuGet: Install-Package GrabzIt
using GrabzIt;
using GrabzIt.Parameters;
using System;
class Program
{
static void Main()
{
var grabzIt = new GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET");
var options = new ImageOptions();
options.Format = ImageFormat.png;
options.Width = 800;
options.Height = 600;
grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options);
grabzIt.SaveTo("output.png");
}
}
Imports GrabzIt
Imports GrabzIt.Parameters
Imports System
Module Program
Sub Main()
Dim grabzIt As New GrabzItClient("YOUR_APPLICATION_KEY", "YOUR_APPLICATION_SECRET")
Dim options As New ImageOptions()
options.Format = ImageFormat.png
options.Width = 800
options.Height = 600
grabzIt.HTMLToImage("<html><body><h1>Hello World</h1></body></html>", options)
grabzIt.SaveTo("output.png")
End Sub
End Module
Après (IronPDF):
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Drawing;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
}
}
// NuGet: Install-Package IronPdf
using IronPdf;
using System;
using System.Drawing;
class Program
{
static void Main()
{
var renderer = new ChromePdfRenderer();
var pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>");
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
}
}
Imports IronPdf
Imports System
Imports System.Drawing
Class Program
Shared Sub Main()
Dim renderer = New ChromePdfRenderer()
Dim pdf = renderer.RenderHtmlAsPdf("<html><body><h1>Hello World</h1></body></html>")
Dim images = pdf.ToBitmap()
images(0).Save("output.png", System.Drawing.Imaging.ImageFormat.Png)
End Sub
End Class
GrabzIt fournit une méthode dédiée HTMLToImage() avec ImageOptions pour la configuration du format, de la largeur et de la hauteur.IronPDFobtient le même résultat en convertissant d'abord le HTML en PDF à l'aide de RenderHtmlAsPdf(), puis en le convertissant en bitmap avec ToBitmap(). Cette approche permet d'obtenir le PDF et l'image à partir d'une seule opération de rendu.
Notes de migration essentielles
Aucun rappel n'est nécessaire
Le changement architectural le plus important est l'élimination totale des gestionnaires de rappel :
// GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options);
grabzIt.Save("https://myserver.com/grabzit-callback"); // Wait for callback...
// Callback handler (separate endpoint)
public class GrabzItHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string id = context.Request.QueryString["id"];
GrabzItClient grabzIt = new GrabzItClient("APP_KEY", "APP_SECRET");
GrabzItFile file = grabzIt.GetResult(id);
file.Save("output.pdf");
}
}
// IronPDF: Synchronous - result immediately available
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf"); // Done! No callback needed.
// GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options);
grabzIt.Save("https://myserver.com/grabzit-callback"); // Wait for callback...
// Callback handler (separate endpoint)
public class GrabzItHandler : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
string id = context.Request.QueryString["id"];
GrabzItClient grabzIt = new GrabzItClient("APP_KEY", "APP_SECRET");
GrabzItFile file = grabzIt.GetResult(id);
file.Save("output.pdf");
}
}
// IronPDF: Synchronous - result immediately available
var pdf = renderer.RenderHtmlAsPdf(html);
pdf.SaveAs("output.pdf"); // Done! No callback needed.
Imports System.Web
' GrabzIt: Async callback pattern
grabzIt.HTMLToPDF(html, options)
grabzIt.Save("https://myserver.com/grabzit-callback") ' Wait for callback...
' Callback handler (separate endpoint)
Public Class GrabzItHandler
Implements IHttpHandler
Public Sub ProcessRequest(context As HttpContext) Implements IHttpHandler.ProcessRequest
Dim id As String = context.Request.QueryString("id")
Dim grabzIt As New GrabzItClient("APP_KEY", "APP_SECRET")
Dim file As GrabzItFile = grabzIt.GetResult(id)
file.Save("output.pdf")
End Sub
Public ReadOnly Property IsReusable As Boolean Implements IHttpHandler.IsReusable
Get
Return False
End Get
End Property
End Class
' IronPDF: Synchronous - result immediately available
Dim pdf = renderer.RenderHtmlAsPdf(html)
pdf.SaveAs("output.pdf") ' Done! No callback needed.
Supprimez tous les gestionnaires de rappel GrabzIt (fichiers .ashx, points de terminaison du gestionnaire, configuration du webhook) après la migration.
Vrais PDF vectoriels
GrabzIt crée des PDF à base d'images où le texte n'est pas sélectionnable.IronPDFgénère de véritables PDF vectoriels :
// With IronPDF, text extraction works natively
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText(); // Works without OCR!
// With IronPDF, text extraction works natively
var pdf = PdfDocument.FromFile("document.pdf");
string text = pdf.ExtractAllText(); // Works without OCR!
Imports IronPdf
' With IronPDF, text extraction works natively
Dim pdf = PdfDocument.FromFile("document.pdf")
Dim text As String = pdf.ExtractAllText() ' Works without OCR!
Voir la documentation sur l'extraction de texte pour plus de détails.
Taille des fichiers réduite
Les PDF vectoriels sont généralement 5 à 10 fois plus petits que les PDF à base d'images de GrabzIt. Cela permet d'améliorer les coûts de stockage, les temps de téléchargement et la possibilité d'envoyer des pièces jointes par courrier électronique.
Supprimer les informations d'identification de l'API
GrabzIt nécessite des identifiants API pour chaque opération :
// Remove these from configuration
// YOUR_APPLICATION_KEY
// YOUR_APPLICATION_SECRET
// Remove these from configuration
// YOUR_APPLICATION_KEY
// YOUR_APPLICATION_SECRET
IronPDF utilise une clé de licence unique définie une seule fois au démarrage de l'application - pas d'authentification par demande.
Dépannage
Édition 1 : GrabzItClient introuvable
Problème : Après la suppression de GrabzIt, les références GrabzItClient provoquent des erreurs de compilation.
Solution : Remplacer par ChromePdfRenderer :
// Remove:
// var grabzIt = new GrabzItClient("KEY", "SECRET");
// Replace with:
var renderer = new ChromePdfRenderer();
// Remove:
// var grabzIt = new GrabzItClient("KEY", "SECRET");
// Replace with:
var renderer = new ChromePdfRenderer();
' Remove:
' Dim grabzIt = New GrabzItClient("KEY", "SECRET")
' Replace with:
Dim renderer = New ChromePdfRenderer()
Édition 2 : PDFOptions introuvables
Problème : PDFOptions classe n'existe pas dans IronPDF.
Solution : Utilisez la propriété RenderingOptions :
// GrabzIt
var options = new PDFOptions();
options.PageSize = PageSize.A4;
// IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
// GrabzIt
var options = new PDFOptions();
options.PageSize = PageSize.A4;
// IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4;
' GrabzIt
Dim options As New PDFOptions()
options.PageSize = PageSize.A4
' IronPDF
renderer.RenderingOptions.PaperSize = PdfPaperSize.A4
Sujet 3 : Les gestionnaires de rappel sont toujours référencés
Problème : L'application attend des points de terminaison de rappel.
Solution : Supprimer entièrement l'infrastructure de rappel.IronPDFrenvoie les résultats de manière synchrone - aucun webhook n'est nécessaire.
Edition 4 : ImageOptions Not Found
Problème : ImageOptions classe n'existe pas dans IronPDF.
Solution : Générer d'abord un PDF, puis convertir :
// GrabzIt
var options = new ImageOptions();
options.Format = ImageFormat.png;
grabzIt.HTMLToImage(html, options);
// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
// GrabzIt
var options = new ImageOptions();
options.Format = ImageFormat.png;
grabzIt.HTMLToImage(html, options);
// IronPDF
var pdf = renderer.RenderHtmlAsPdf(html);
var images = pdf.ToBitmap();
images[0].Save("output.png", System.Drawing.Imaging.ImageFormat.Png);
' GrabzIt
Dim options As New ImageOptions()
options.Format = ImageFormat.png
grabzIt.HTMLToImage(html, options)
' IronPDF
Dim pdf = renderer.RenderHtmlAsPdf(html)
Dim images = pdf.ToBitmap()
images(0).Save("output.png", System.Drawing.Imaging.ImageFormat.Png)
Liste de contrôle de la migration
Pré-migration
- Inventorier tous les appels à l'API GrabzItdans le code source
- Identifier les gestionnaires de rappel et les points de terminaison webhook
- Documenter les options et modèles actuels de GrabzIt
- Obtenir une clé de licence IronPDF
- Mise hors service du gestionnaire de rappel du plan
Migration de code
- Installez le package NuGet IronPDF :
dotnet add package IronPdf - Supprimer le package NuGet GrabzIt :
dotnet remove package GrabzIt - Remplacez
GrabzItClientparChromePdfRenderer - Convertir
HTMLToPDF()enRenderHtmlAsPdf() - Convertir
URLToPDF()enRenderUrlAsPdf() - Remplacez
Save(callback)parSaveAs(path) - Mettre à jour les options de
PDFOptionsàRenderingOptions
Migration des infrastructures
- Supprimer les fichiers de gestionnaire de rappel (
.ashx, etc.) - Supprimez les clés API GrabzItde la configuration
- Supprimer la configuration de l'URL du webhook
- Ajouter la clé de licenceIronPDFà la configuration
- Supprimer le code d'interrogation/de vérification d'état
Essai
- Tester la conversion de HTML en PDF
- Test de conversion d'URL en PDF
- Vérifier que le texte est sélectionnable dans les fichiers PDF de sortie
- L'extraction de texte de test fonctionne (sans OCR)
- Vérifiez que la taille des fichiers est plus petite
- Test de performance sans latence réseau
Après la migration
- Annuler l'abonnement GrabzIt
- Code du gestionnaire de rappel d'archive
- Mise à jour de la documentation
- Surveiller les erreurs liées à GrabzIt

