import {PdfDocument} from "@ironsoftware/ironpdf";
(async () => {
// Create a PDF from an HTML string
const pdf = await PdfDocument.fromHtml("<h1>Hello World</h1>");
// Export the PDF to a file
await pdf.saveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external HTML assets: Images, CSS, and JavaScript.
const htmlContentWithAssets = "<img src='icons/iron.png'>";
const advancedPdf = await PdfDocument.fromHtml(htmlContentWithAssets);
// Save the PDF with loaded assets
await advancedPdf.saveAs("html-with-assets.pdf");
})();
répliquer npm (Comment ça fonctionne pour les développeurs)
Publié septembre 29, 2024
Partager:
Le 'répliquerLe package NPM est un outil client puissant pour intégrer des modèles d'apprentissage automatique dans les applications React. Il permet aux développeurs d'utiliser facilement des modèles pré-entraînés et d'exécuter des inférences directement dans leurs applications sans avoir à gérer une infrastructure backend complexe. Voici un aperçu de la façon dont vous pouvez utiliser lerépliquer le package NPMdans votre projet React. Nous examinerons égalementIronPDF, une bibliothèque de génération de PDF pour générer des PDF et combiner les deux bibliothèques afin de créer une application fonctionnelle.
Introduction à Replicate
Reproduireest une plateforme en ligne qui offre un accès à des modèles d'apprentissage automatique via une API simple. Il héberge des modèles de divers domaines, tels que la génération d'images, l'analyse de texte, et plus encore. En utilisant le package NPM 'replicate', les développeurs peuvent intégrer ces modèles dans leurs applications de manière transparente.
Pour commencer
Installation
Pour utiliser `replicate` dans votre application React, vous devez d'abord installer le package. Vous pouvez le faire en utilisant npm ou yarn :
npm install replicate
ou
yarn add replicate
Clé API
Vous aurez besoin d'une clé API pour interagir avec l'API Replicate. Vous pouvez obtenir cette clé en vous inscrivant sur leReproduire le site webet créer un nouveau jeton API.
Utilisation de base
Voici un guide étape par étape pour utiliser le package `replicate` dans une application React.
1. Importez le package et initialisez le client
import Replicate from 'replicate';
const output = new Replicate({
auth: 'YOUR_API_TOKEN'
});
import Replicate from 'replicate';
const output = new Replicate({
auth: 'YOUR_API_TOKEN'
});
JAVASCRIPT
2. Exécuter une inférence
En supposant que vous souhaitiez utiliser un modèle pour générer une image à partir de texte, avec seulement quelques lignes de code, vous obtenez le résultat comme ci-dessous :
const result = await replicate.run("stability-ai/stable-diffusion", {
input: {
prompt: "a futuristic cityscape"
}
}); // identifier and prediction parameters
console.log(result);
const result = await replicate.run("stability-ai/stable-diffusion", {
input: {
prompt: "a futuristic cityscape"
}
}); // identifier and prediction parameters
console.log(result);
JAVASCRIPT
Exemple d'application
Créons une application React simple qui permet aux utilisateurs de générer des images à partir de descriptions textuelles pour démontrer l'utilisation de la réplication Node.
1. Configurer un nouveau projet React :
npx create-react-app replicate-example
cd replicate-example
npm install replicate
2. Créer un composant pour la génération d'images :
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import ImageGenerator from './ImageGenerator';
ReactDOM.render(
<React.StrictMode>
<App />
<ImageGenerator />
</React.StrictMode>,
document.getElementById('root')
);
import React from 'react';
import ReactDOM from 'react-dom';
import './index.css';
import App from './App';
import ImageGenerator from './ImageGenerator';
ReactDOM.render(
<React.StrictMode>
<App />
<ImageGenerator />
</React.StrictMode>,
document.getElementById('root')
);
JAVASCRIPT
Gestion des erreurs
Lorsqu'on travaille avec des API, il est crucial de gérer les erreurs avec élégance. Vous pouvez modifier la fonction 'generateImage' pour intercepter et afficher les erreurs :
IronPDFest un package npm polyvalent conçu pour simplifier la génération de PDF dans les applications Node.js. Il vous permet de créer des documents PDF à partir deContenu HTML, URL, ou des fichiers PDF existants. Que vous ayez besoin de générer des factures, des rapports ou d'autres types de documents, IronPDF rend le processus facile grâce à son interface intuitive.APIet ensemble de fonctionnalités complet.
Créez des PDFs directement à partir d'URLs, vous permettant de capturer le contenu des pages web et de l'enregistrer sous forme de fichiers PDF de manière programmée.
3. Manipulation de PDF
Fusionner, diviser et manipuler des documents PDF existants en toute simplicité. IronPDF offre des fonctionnalités pour ajouter des pages, diviser des documents,création de formulaires PDFet bien d'autres choses encore.
Produisez des documents PDF de haute qualité avec un rendu précis du texte, des images et du formatage, en veillant à ce que les PDFs générés reflètent fidèlement le contenu original.
6. Compatibilité multiplateforme
La compatibilité d'IronPDF avec Windows, Linux et macOS le rend adapté à divers environnements de développement.
7. Intégration simple
Intégrez IronPDF dans vos applications Node.js facilement en utilisant son package npm. L'API bien documentée simplifie l'intégration des capacités de génération de PDF dans vos projets.
Que vous développiez une application web, un script côté serveur ou un outil en ligne de commande, IronPDF vous permet de créer des documents PDF de qualité professionnelle de manière efficace et fiable.
Générer un document PDF en utilisant IronPDF et utiliser le package NPM Recharts
Installer les dépendances : Tout d'abord, créez un nouveau projet Next.js(si vous ne l'avez pas encore fait) à l'aide de la commande suivante : Référerici
Créer un PDF : Maintenant, créons un exemple simple de génération d'un PDF en utilisant IronPDF. Dans votre composant Next.js(par exemple, pages/index.tsx)ajoutez le code suivant :
API de génération de PDF : La première étape consiste à créer une API backend pour générer le document PDF. Étant donné qu'IronPDF fonctionne uniquement côté serveur, nous devons créer une API à appeler lorsque les utilisateurs souhaitent générer un PDF. Créez un fichier dans le chemin pages/api/pdf/route.js et ajoutez le contenu ci-dessous :
// pages/api/pdf.js
import { NextRequest, NextResponse } from 'next/server';
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "your key";
export const GET = async (req) => {
const {searchParams} = new URL(req.url);
const name = searchParams.get("url");
try {
const pdf = await PdfDocument.fromUrl(name);
const data = await pdf.saveAsBuffer();
console.error('data PDF:', data);
return new NextResponse(data, {
status: 200,
headers: {
"content-type": "application/pdf",
"Content-Disposition": "attachment; filename=awesomeIron.pdf",
},
})
} catch (error) {
console.error('Error generating PDF:', error);
return NextResponse.json({ detail: "error" }, { status: 500 });
}
}
// pages/api/pdf.js
import { NextRequest, NextResponse } from 'next/server';
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "your key";
export const GET = async (req) => {
const {searchParams} = new URL(req.url);
const name = searchParams.get("url");
try {
const pdf = await PdfDocument.fromUrl(name);
const data = await pdf.saveAsBuffer();
console.error('data PDF:', data);
return new NextResponse(data, {
status: 200,
headers: {
"content-type": "application/pdf",
"Content-Disposition": "attachment; filename=awesomeIron.pdf",
},
})
} catch (error) {
console.error('Error generating PDF:', error);
return NextResponse.json({ detail: "error" }, { status: 500 });
}
}
JAVASCRIPT
IronPDF nécessite une clé de licence, que vous pouvez obtenir auprès de lpage de licenceet placez dans le code ci-dessus
Le code commence par importer les modules nécessaires à partir de bibliothèques externes : 'useState', 'useEffect' et 'useRef' depuis "react" : Ce sont des Hooks React qui permettent aux composants fonctionnels de gérer l'état, de gérer les effets secondaires, et de créer des références aux éléments du DOM, respectivement.
'Image' de "next/image" : C'est un composant fourni par Next.js pour un chargement d'image optimisé. La déclaration "use client" n'est pas une importation standard en JavaScript ou React. Il semble être spécifique à Next.js(un framework React)et indique que le composant qui l'utilise doit être rendu côté client. Il garantit que le JavaScript nécessaire pour ce composant est envoyé au client.
2. Fonction du composant
Le composant 'Home' est défini comme l'exportation par défaut. À l'intérieur du composant, il y a plusieurs variables d'état.('prédiction', 'erreur')géré à l'aide du crochet 'useState'.
Une référence('promptInputRef')est créé en utilisant le crochet 'useRef'. Le hook 'useEffect' est utilisé pour se concentrer sur le 'promptInputRef' lorsque le composant se monte.
La fonction 'handleSubmit' est une fonction asynchrone qui gère la soumission du formulaire. Il envoie une requête POST à un point de terminaison API(`/api/predictions`)avec une valeur d'invite.
La réponse est traitée, et si elle réussit, l'état de 'prédiction' est mis à jour. La fonction entre ensuite dans une boucle, vérifiant périodiquement l'état de la prédiction jusqu'à ce qu'elle réussisse ou échoue. La méthode 'generatePdf' récupère un PDF à partir d'un autre point de terminaison API.(/api/pdf)en fonction de la dernière sortie dans l'état 'prédiction'.
3. Balises HTML
Le composant retourne un div conteneur avec un certain style.('max-w-2xl', 'mx-auto', 'p-5'). À l'intérieur du conteneur, il y a un élément '
' avec le texte "AwesomeIron" (qui pourrait être un nom de projet ou un titre).
Dans l'ensemble, ce code semble faire partie d'une application Next.js qui gère des prédictions et génère des PDFs en fonction des saisies de l'utilisateur. La déclaration "use client" est spécifique à Next.js et garantit le rendu côté client pour le composant où elle est utilisée. Si vous avez des questions spécifiques concernant une partie particulière du code
SORTIE
Entrez le texte à prédire comme "car", puis l'image ci-dessous est prédite.
Ensuite, cliquez sur Générer PDF pour créer un document PDF.
Placez la clé de licence dans l'application comme indiqué dans l'exemple suivant :
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
import {IronPdfGlobalConfig, PdfDocument} from "@ironsoftware/ironpdf";
// Apply your IronPDF license key
IronPdfGlobalConfig.getConfig().licenseKey = "Add Your key here";
JAVASCRIPT
Conclusion
La `répliquerLe package NPM offre un moyen pratique d'utiliser des modèles d'apprentissage automatique puissants dans les applications React. En suivant les étapes décrites dans cet article, vous pouvez facilement intégrer des capacités de génération d'images dans vos projets. Cela ouvre un large éventail de possibilités pour créer des expériences utilisateur innovantes et interactives.
N'oubliez pas d'explorer les autres modèles disponibles sur leReproduireplateforme pour étendre encore plus les fonctionnalités de vos applications.
Aussi,IronPDFest une puissante bibliothèque PDF pour les fonctionnalités de génération et de manipulation de PDF, ainsi que la capacité derendre des graphiques réactifsdans les PDFs à la volée. Il permet aux développeurs d'intégrer des packs de graphiques riches en fonctionnalités dans des applications en seulement quelques lignes. Avec ces deux bibliothèques, les développeurs peuvent travailler avec la technologie d'intelligence artificielle moderne et enregistrer les résultats de manière fiable sous forme de PDF.
Regan est diplômé de l'université de Reading, où il a obtenu une licence en ingénierie électronique. Avant de rejoindre Iron Software, il s'était concentré sur une seule tâche. Ce qu'il apprécie le plus chez Iron Software, c'est la diversité des tâches qu'il peut accomplir, qu'il s'agisse d'apporter une valeur ajoutée aux ventes, à l'assistance technique, au développement de produits ou à la commercialisation. Il aime comprendre comment les développeurs utilisent la bibliothèque d'Iron Software et utiliser ces connaissances pour améliorer continuellement la documentation et développer les produits.
< PRÉCÉDENT xml2js npm (Comment cela fonctionne pour les développeurs)
SUIVANT > toastify npm (Comment cela fonctionne pour les développeurs)
Vous avez une question ? Prendre contact avec notre équipe de développement.
Vous avez une question ? Prendre contact avec notre équipe de développement.
Commencez GRATUITEMENT
Aucune carte de crédit n'est requise
Test dans un environnement réel
Test en production sans filigrane. Fonctionne partout où vous en avez besoin.
Produit entièrement fonctionnel
Obtenez 30 jours de produit entièrement fonctionnel. Il est opérationnel en quelques minutes.
assistance technique 24/5
Accès complet à notre équipe d'ingénieurs pendant la période d'essai du produit
Obtenez gratuitement votre clé d'évaluation de 30 jours instantanément.
Aucune carte de crédit ou création de compte n'est nécessaire
Le formulaire d'essai a été soumis avec succès.
Votre clé d'essai devrait se trouver dans l'e-mail. Si ce n'est pas le cas, veuillez contacter support@ironsoftware.com
Des millions d'ingénieurs dans le monde entier lui font confiance
Réservez une démo en direct gratuite
Réservez une démonstration personnelle de 30 minutes.
Pas de contrat, pas de détails de carte, pas d'engagements.
Voici ce à quoi vous pouvez vous attendre :
Une démonstration en direct de notre produit et de ses principales fonctionnalités
Obtenez des recommandations de fonctionnalités spécifiques au projet
Toutes vos questions trouvent réponse pour vous assurer de disposer de toutes les informations dont vous avez besoin. (Aucune obligation de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre gratuit Démonstration en direct
Fiable par plus de 2 millions d'ingénieurs dans le monde entier