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");
})();
mimosa NPM (Comment ça marche pour les développeurs)
Jordi Bardia
octobre 24, 2024
Partager:
Dans Node.js,minification signifie l'optimisation du code en réduisant la taille du fichier grâce à la compression. Ce processus permet d'améliorer les performances et de réduire les temps de chargement. Les caractères superflus, tels que les espaces blancs, les commentaires et les sauts de ligne, seront éliminés. La taille des noms de variables et de fonctions est généralement réduite. La minification supprime le code précompilé sans importance et réduit la taille d'un document, ce qui rend les fichiers JavaScript, CSS et HTML très efficaces et plus rapides à télécharger. Dans cet article, nous allons en apprendre davantage sur Mimosa et son utilisation avec le module IronPDF.
Introduction
Mimosa est un paquetage NPM polyvalent publié il y a près de neuf ans qui étend les flux de travail de développement frontal grâce à l'utilisation de modules et de fonctionnalités puissants. Exécutez des commandes telles que mimosa watch et build pour automatiser la compilation de votre code, et activez reload pour que les modifications soient reflétées instantanément dans le navigateur. Ce paquet contient une configuration permettant de personnaliser efficacement le processus de construction et de gérer les dépendances. Pour plus d'informations sur mimosa, voirDocumentation NPM.
Depuis les premières versions il y a plusieurs années, Mimosa a évolué et cette nouvelle version prend beaucoup mieux en charge les fichiers JavaScript précompilés et compilés. Il suffit d'une simple installation, de la configuration des paramètres mimosa pour le projet et de l'exécution d'une veille mimosa pour commencer à développer. Nous vous encourageons vivement à consulter la documentation très détaillée sur l'utilisation de Mimosa, ce qu'il fait et comment configurer le projet Mimosa si vous avez besoin de plus de détails.
Il possède une architecture modulaire et s'intègre donc facilement à un large éventail de plugins et d'extensions, s'adaptant à différents flux de travail et technologies. En outre, la configuration flexible de Mimosa prend en charge toute diversité d'outils et de cadres frontaux, ce qui constitue un véritable atout pour le développement web moderne. Dans l'ensemble, Mimosa est une solution complète pour améliorer la productivité et faciliter le développement. Le site est alimenté par une communauté solide qui évolue en fonction des besoins des développeurs.
Tout d'abord, assurez-vous que Node.js et NPM sont installés sur votre système. Ensuite, installez Mimosa globalement ou localement dans votre projet :
# Install Mimosa globally
npm install -g mimosa
Pour créer un nouveau projet Mimosa, entrez le code ci-dessous dans la ligne de commande.
A mimosa-config.js, un nom de fichier de configuration pour le système de construction Mimosa configurant plusieurs facettes du développement frontal. Une suite de modules permet la copie, pour la gestion de fichiers ; la traduction doit rester professionnelle et préserver l'exactitude technique tout en expliquant les caractéristiques et les avantages de ces outils de développement ; jshint et csslint, pour l'évaluation des fichiers JavaScript et CSS respectivement ; minify-js et minify-css, pour compresser les fichiers JavaScript et CSS afin d'améliorer les performances.
En outre, elle dispose d'une fonction de rechargement en direct lors de l'actualisation du navigateur en raison de modifications du code et de bower pour les dépendances frontales. La configuration permet également de s'assurer que les modèles de vue sont compilés en tant que fichiers .html afin que les vues HTML puissent être correctement traitées dans le cadre du développement. Le résultat est une configuration complète avec la gestion des actifs, l'optimisation du code source et l'amélioration du flux de travail.
Démarrer Mimosa Watch
Enfin, une fois les paramètres de Mimosa définis, lancez le processus de veille et il recompilera automatiquement vos fichiers chaque fois qu'ils seront modifiés :
mimosa watch
Il surveille vos fichiers sources, les recompile si nécessaire, puis, grâce à LiveReload, actualise rapidement les modifications dans le navigateur.
Vous trouverez ci-dessous une capture d'écran de la page déployée de Mimosa NPM.
Présentation d'IronPDF : Un créateur de PDF
IronPDF for Node.jspeut résoudre un grand nombre de tâches PDF basées sur la programmation, telles que l'édition de PDF préexistants et la conversion de HTML en PDF. IronPDF offre une flexibilité et une facilité de création de documents PDF de haute qualité, ce qui est particulièrement utile dans les applications qui créent et gèrent dynamiquement des PDF.
Installer le package IronPDF
Installez la dernière version du package pour activer les capacités d'IronPDF dans Node.js en utilisant la commande suivante avec un gestionnaire de packages Node.js.
npm install @ironsoftware/ironpdf
Créer un script de génération de PDF avec IronPDF
Vous trouverez ci-dessous un script Node.js permettant de générer des PDF à l'aide d'IronPDF. Par exemple, créer generatePdf.js :
const IronPdf = require('@ironsoftware/ironpdf');
const { PdfDocument } = IronPdf;
// Set IronPDF configuration
const config = IronPdf.IronPdfGlobalConfig;
config.setConfig({ licenseKey: 'YOUR_LICENSE_KEY' }); // Replace with your actual license key
async function generatePDF(title, content) {
try {
// Generate PDF from HTML content
const pdf = await PdfDocument.fromHtml(`<html><body><h1>${title}</h1><p>${content}</p></body></html>`);
return await pdf.saveAsBuffer();
} catch (error) {
console.error('Error generating PDF:', error);
throw error;
}
}
module.exports = generatePDF;
const IronPdf = require('@ironsoftware/ironpdf');
const { PdfDocument } = IronPdf;
// Set IronPDF configuration
const config = IronPdf.IronPdfGlobalConfig;
config.setConfig({ licenseKey: 'YOUR_LICENSE_KEY' }); // Replace with your actual license key
async function generatePDF(title, content) {
try {
// Generate PDF from HTML content
const pdf = await PdfDocument.fromHtml(`<html><body><h1>${title}</h1><p>${content}</p></body></html>`);
return await pdf.saveAsBuffer();
} catch (error) {
console.error('Error generating PDF:', error);
throw error;
}
}
module.exports = generatePDF;
JAVASCRIPT
Remplacez " VOTRE CLÉ DE LICENCE " par votre véritable clé de licence IronPDF.
Intégrer Mimosa et IronPDF dans une application Express.js
Intégrer Mimosa pour la gestion des actifs et IronPDF pour la génération de PDF dans une application Express.js :
const express = require('express');
const bodyParser = require('body-parser');
const generatePDF = require('./generatePdf'); // Path to your PDF generation script
const app = express();
app.use(bodyParser.json());
// Serve assets managed by Mimosa
app.use(express.static('public'));
// Route to generate PDF
app.post('/generate-pdf', async (req, res) => {
const { title, content } = req.body;
if (!title
!content) {
return res.status(400).json({ error: 'Title and content are required' });
}
try {
// Generate PDF
const pdfBuffer = await generatePDF(title, content);
// Respond with the PDF
res.set({
'Content-Type': 'application/pdf',
'Content-Disposition': 'attachment; filename="generated.pdf"'
});
res.send(pdfBuffer);
} catch (error) {
console.error('Error generating PDF:', error);
res.status(500).json({ error: 'Failed to generate PDF' });
}
});
// Start listening
app.listen(3000, () => {
console.log('Server running on http://localhost:3000');
});
const express = require('express');
const bodyParser = require('body-parser');
const generatePDF = require('./generatePdf'); // Path to your PDF generation script
const app = express();
app.use(bodyParser.json());
// Serve assets managed by Mimosa
app.use(express.static('public'));
// Route to generate PDF
app.post('/generate-pdf', async (req, res) => {
const { title, content } = req.body;
if (!title
!content) {
return res.status(400).json({ error: 'Title and content are required' });
}
try {
// Generate PDF
const pdfBuffer = await generatePDF(title, content);
// Respond with the PDF
res.set({
'Content-Type': 'application/pdf',
'Content-Disposition': 'attachment; filename="generated.pdf"'
});
res.send(pdfBuffer);
} catch (error) {
console.error('Error generating PDF:', error);
res.status(500).json({ error: 'Failed to generate PDF' });
}
});
// Start listening
app.listen(3000, () => {
console.log('Server running on http://localhost:3000');
});
JAVASCRIPT
Définit une route avec la méthode POST qui est gérée pour la requête /pdf. Extrait le titre et le contenu du corps de la requête et vérifie s'ils existent. Dans le cas contraire, si l'un de ces champs est manquant, il renvoie un statut 400 accompagné d'un message d'erreur. Dans le cas contraire, elle tentera degénérer un PDF en invoquant generatePDF et en fournissant les données nécessaires à la création d'un PDF.
En cas de succès, cela établira un en-tête de réponse indiquant que le contenu de la réponse est un fichier PDF et ajoutera un nom de fichier pour le téléchargement. Il renverra ensuite le PDF créé en guise de réponse. Si la génération d'un PDF échoue, elle enregistre l'erreur et répond par un statut 500 et un message d'erreur.
Enfin, il va écouter sur le port 3000 et se connecter à la console avec un message indiquant que le serveur est en cours d'exécution et est disponible à l'adresse http://localhost:3000. Voici la capture d'écran du PDF généré à partir du module Mimosa en utilisant l'outil Postman.
Licences pour IronPDF
Le code ci-dessus nécessite une clé de licence pour fonctionner sans le filigrane. Les développeurs qui s'inscrivent ici bénéficient d'une version d'essailicence. Vous pouvez vous inscrire à cet essai gratuit en indiquant votre adresse électronique.
Conclusion
L'intégration avec Mimosa et IronPDF permet d'obtenir une solution transparente pour la gestion des actifs frontaux, avec la génération de PDF dans un environnement Node.js. Mimosa prend efficacement en charge la compilation, la minification et le rechargement en direct des feuilles de style CSS, du JavaScript et d'autres actifs, garantissant ainsi que votre application web est toujours à jour et réactive. En outre, IronPDF offre de nombreuses possibilités de création de fichiers PDF qui permettent de transformer facilement tout contenu HTML généré de manière dynamique en un fichier PDF de qualité professionnelle.
La combinaison facilite le flux de travail du développement en automatisant la gestion des actifs et la génération de documents, donnant ainsi aux développeurs une chance de créer des applications de qualité. Parallèlement, Mimosa et IronPDF unissent leurs forces pour fournir aux applications web modernes à la fois une approche intégrale de la gestion des actifs web et de la génération de documents imprimables, augmentant ainsi l'efficacité et la fonctionnalité. Pour vous aider à devenir un meilleur codeur et à répondre aux exigences des applications contemporaines, vous pouvez également consulter les documents suivantsIron Software solutions.
Jordi maîtrise parfaitement Python, C# et C++. Lorsqu'il ne met pas à profit ses compétences chez Iron Software, il se consacre à la programmation de jeux. Partageant des responsabilités en matière de tests de produits, de développement de produits et de recherche, Jordi apporte une valeur ajoutée considérable à l'amélioration continue des produits. Cette expérience variée le stimule et l'engage, et il dit que c'est l'un des aspects qu'il préfère dans son travail chez Iron Software. Jordi a grandi à Miami, en Floride, et a étudié l'informatique et les statistiques à l'université de Floride.
< PRÉCÉDENT snowpack NPM (Comment ça marche pour les développeurs)
SUIVANT > oauth2orize NPM (Comment ça marche pour les développeurs)
Vous avez une question ? Prendre contact avec notre équipe de développement.
Vous avez une question ? Contactez notre équipe de développement.
Commencez GRATUITEMENT
Aucune carte de crédit n'est requise
Test dans un environnement réel
Testez en production sans filigranes. Fonctionne là où vous en avez besoin.
Produit entièrement fonctionnel
Obtenez 30 jours de produit entièrement fonctionnel. Faites-le fonctionner en quelques minutes.
assistance technique 24/5
Accès complet à notre équipe d'ingénieurs pendant la période d'essai du produit
Obtenez votre clé d'essai de 30 jours gratuite 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 être 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. (Aucun engagement de votre part.)
CHOISIR L'HEURE
VOS INFORMATIONS
Réservez votre démo en direct gratuite
Fiable par plus de 2 millions d'ingénieurs dans le monde entier