


Introduction à la façon d'ajouter, de modifier et de supprimer des signets PDF en C#
Cet article présente principalement l'exemple de code d'ajout, de modification et de suppression de signets PDF en C#. L'éditeur pense que c'est plutôt bon, je vais donc le partager avec vous maintenant et le donner comme référence. Suivons l'éditeur pour y jeter un œil.
Parfois, lorsque nous lisons des documents PDF, nous rencontrons une telle situation : le document PDF a beaucoup de pages, mais il n'y a pas de signets, nous ne pouvons donc pas comprendre rapidement le contenu. document basé sur les signets. Le contenu expliqué ne peut pas être cliqué sur le signet pour accéder rapidement à l'emplacement correspondant, mais ne peut être lu que page par page, ce qui est très pénible. Je pense que les développeurs auront également de telles exigences fonctionnelles lors du développement d'applications liées aux PDF. Dans cet article, je présenterai donc comment utiliser la programmation (C#) et le composant Spire.PDF pour ajouter des signets aux documents PDF (y compris l'ajout de signets aux documents existants). et ajout de sous-signets), ainsi que la modification et la suppression de signets spécifiés dans les documents PDF existants.
Présentation du composant Spire.PDF
Spire.PDF est un composant PDF professionnel permettant de créer, d'éditer dans des applications .NET, de traiter et de lire Documents PDF. Prend en charge les opérations de traitement de documents PDF riches, telles que la fusion/scission de documents PDF, la conversion (telle que HTML en PDF, PDF en images, etc.), l'impression (y compris l'impression silencieuse), la compression, l'ajout/modification/suppression de signets, l'ajout de commentaires, et paramètres de sécurité (y compris les signatures numériques), création et remplissage de champs, insertion et extraction d'images, extraction et mise en surbrillance de texte, etc. Cela ne dépend pas d'Adobe Acrobat, donc l'environnement d'exécution ne nécessite pas l'installation d'Adobe Reader ou d'autres composants similaires. Ce composant est divisé en deux types : version commerciale et version gratuite (pas de version d'essai). Généralement, lorsque l'utilisation personnelle ou l'exploitation de documents PDF ne dépassent pas 10 pages, vous pouvez utiliser la version gratuite.
Il existe de nombreux canaux pour son installation, notamment le site officiel et NuGet, la méthode la plus appréciée et la plus couramment utilisée par les développeurs. Entrez la commande PowerShell suivante dans la console NuGet Package Manager de Visual Studio et appuyez sur Entrée. La DLL du composant sera automatiquement référencée dans le projet :
PM> Install-Package Spire.PDF
. Mise en œuvre de l'ajout, de la modification et de la suppression de signets PDF
1.Ajout de signets
1.1 Ajout de signets
Dans Spire.PDF, chaque document PDF possède une liste de signets (PdfBookmarkCollection). Nous pouvons obtenir la liste via la propriété Bookmarks de l'objet PdfDocument, puis ajouter des signets à la liste via la méthode Add ().
//新建PDF文档 PdfDocument pdf = new PdfDocument(); //添加页面 PdfPageBase page = pdf.Pages.Add(); //添加书签 PdfBookmark bookmark = pdf.Bookmarks.Add("第一页"); //设置书签所指向的页面和位置,(0,0)表示页面的开始位置 bookmark.Destination = new PdfDestination(page); bookmark.Destination.Location = new PointF(0, 0); //设置书签的文本格式和颜色 bookmark.DisplayStyle = PdfTextStyle.Bold; bookmark.Color = Color.Black; //保存文档 pdf.SaveToFile("Bookmark2.pdf");
1.2 Ajouter des sous-signets
Ajouter des sous-signets et ajouter signets normaux La méthode est fondamentalement la même, la différence est que les signets ordinaires sont ajoutés directement à la liste de signets du document, tandis que les signets enfants sont ajoutés à la liste des signets parents.
//新建PDF文档 PdfDocument pdf = new PdfDocument(); //添加页面 PdfPageBase page = pdf.Pages.Add(); //添加书签 PdfBookmark bookmark = pdf.Bookmarks.Add("第一章 热传导"); //设置书签指向的页面和位置 bookmark.Destination = new PdfDestination(page); bookmark.Destination.Location = new PointF(0, 0); //设置书签的文本格式和颜色 bookmark.DisplayStyle = PdfTextStyle.Bold; bookmark.Color = Color.SeaGreen; //添加子书签 PdfBookmark childBookmark = bookmark.Insert(0, "1.1 热传导基本知识"); //设置子书签指向的页面和位置 childBookmark.Destination = new PdfDestination(page); childBookmark.Destination.Location = new PointF(400, 300); //设置子书签的文本格式和颜色 childBookmark.DisplayStyle = PdfTextStyle.Regular; childBookmark.Color = Color.Black; //保存文档 pdf.SaveToFile("ChildBookmark.pdf");
1.3 Ajouter des favoris aux documents existants
Sauf dans les nouveaux Ajouter signets aux documents PDF Nous pouvons également ajouter des signets aux documents PDF existants. En plus de LoadFromFile, les méthodes de chargement de documents PDF incluent LoadFromStream (chargement à partir d'un flux), LoadFromHTML (chargement à partir de HTML), etc. Vous pouvez choisir la méthode de chargement correspondante en fonction de vos propres besoins.
//加载文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("示例.pdf"); for (int i = 0; i < pdf.Pages.Count; i++) { //添加书签 PdfBookmark bookmark = pdf.Bookmarks.Add(string.Format("第{0}章", i+1)); //设置书签指向的页面和位置 bookmark.Destination = new PdfDestination(pdf.Pages[i]); bookmark.Destination.Location = new PointF(0, 0); //设置书签的文本格式和颜色 bookmark.DisplayStyle = PdfTextStyle.Bold; bookmark.Color = Color.Black; } //保存文档 pdf.SaveToFile("Bookmark2.pdf");
2. Modifier les signets
Spire.PDF prend en charge plusieurs signets Modification méthodes, telles que la modification du contenu des signets existants, l'insertion de nouveaux signets dans la liste de signets existante, l'insertion de sous-signets dans les signets existants, etc. Ici, je choisis de modifier le contenu du signet et d'insérer un nouveau signet dans la liste de signets existante pour l'introduction.
2.1 Modifier le contenu du favori existant
//加载文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("Bookmark2.pdf"); //获取书签列表 PdfBookmarkCollection bookmarks = pdf.Bookmarks; //获取第一个书签 PdfBookmark bookmark = bookmarks[0]; //修改书签指向的页面 bookmark.Destination = new PdfDestination(document.Pages[1]); //修改书签的文本格式和颜色 bookmark.DisplayStyle = PdfTextStyle.Bold; bookmark.Color = Color.Green; //修改书签的title bookmark.Title = "修改"; //保存文档 pdf.SaveToFile("ModifyBookmark.pdf");
2.2 Insérer Ajouter nouveau signet à la liste de favoris existante
//加载文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("Bookmark2.pdf"); //插入新书签到指定位置(此处插入的是第三个书签的位置) PdfBookmark bookmark = pdf.Bookmarks.Insert(2, "新增第三章"); //设置书签所指向的页面和位置 bookmark.Destination = new PdfDestination(document.Pages[1]); bookmark.Destination.Location = new PointF(0, 300); //保存文档 pdf.SaveToFile("InsertBookmark.pdf");
3. Supprimer le signet
Lors de la suppression d'un marque-page, vous pouvez utiliser le numéro de série du marque-page ou son nom. Ici, j'utilise la méthode du numéro de série.
//加载文档 PdfDocument pdf = new PdfDocument(); pdf.LoadFromFile("Bookmark2.pdf"); //获取书签列表 PdfBookmarkCollection bookmarks = document.Bookmarks; //删除第一个书签 bookmarks.RemoveAt(0); //保存文档 pdf.SaveToFile("DeleteBookmark.pdf");
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Que vous soyez débutant ou professionnel expérimenté, la maîtrise du C# ouvrira la voie à votre carrière.

Le développement des technologies d’intelligence artificielle (IA) bat son plein aujourd’hui et elles ont montré un grand potentiel et une grande influence dans divers domaines. Aujourd'hui, Dayao partagera avec vous 4 cadres de projets liés au modèle d'IA open source .NET LLM, dans l'espoir de vous fournir une référence. https://github.com/YSGStudyHards/DotNetGuide/blob/main/docs/DotNet/DotNetProjectPicks.mdSemanticKernelSemanticKernel est un kit de développement logiciel (SDK) open source conçu pour intégrer de grands modèles de langage (LLM) tels qu'OpenAI, Azure

Si vous êtes un développeur .NET, vous devez être conscient de l'importance d'optimiser les fonctionnalités et les performances pour fournir des logiciels de haute qualité. En utilisant de manière experte les ressources fournies et en réduisant les temps de chargement des sites Web, vous créez non seulement une expérience agréable pour vos utilisateurs, mais vous réduisez également les coûts d'infrastructure.

En termes de traitement des requêtes à haute concurrence, .NETASP.NETCoreWebAPI fonctionne mieux que JavaSpringMVC. Les raisons incluent : la compilation précoce AOT, qui réduit le temps de démarrage, une gestion plus raffinée de la mémoire, où les développeurs sont responsables de l'allocation et de la libération de la mémoire des objets.

C # .NET Les questions et réponses d'entrevue comprennent les connaissances de base, les concepts de base et l'utilisation avancée. 1) Connaissances de base: C # est un langage orienté objet développé par Microsoft et est principalement utilisé dans le framework .NET. 2) Concepts de base: la délégation et les événements permettent des méthodes de liaison dynamiques, et LINQ fournit des fonctions de requête puissantes. 3) Utilisation avancée: la programmation asynchrone améliore la réactivité et les arbres d'expression sont utilisés pour la construction de code dynamique.

L'entrevue avec C # Developer Senior Developer nécessite de maîtriser les connaissances de base telles que la programmation asynchrone, la LINQ et les principes de travail internes des frameworks .NET. 1. La programmation asynchrone simplifie les opérations par asynchronisation et attend pour améliorer la réactivité de l'application. 2.Linq exploite des données dans le style SQL et fait attention aux performances. 3. La CLR du cadre net gère la mémoire et la collecte des ordures doit être utilisée avec prudence.

C # est un langage de programmation moderne et orienté objet développé par Microsoft et dans le cadre du .NET Framework. 1.C # prend en charge la programmation orientée objet (POO), y compris l'encapsulation, l'héritage et le polymorphisme. 2. La programmation asynchrone en C # est implémentée via Async et attend des mots clés pour améliorer la réactivité des applications. 3. Utilisez LINQ pour traiter les collections de données concisement. 4. Les erreurs courantes incluent les exceptions de référence NULL et les exceptions indexes hors gamme. Les compétences de débogage comprennent l'utilisation d'un débogueur et une gestion des exceptions. 5. L'optimisation des performances comprend l'utilisation de StringBuilder et d'éviter l'emballage et le déballage inutiles.

Le processus de programmation de C # dans .NET comprend les étapes suivantes: 1) l'écriture de code C #, 2) la compilation dans un langage intermédiaire (IL) et 3) l'exécution par .NET Runtime (CLR). Les avantages de C # dans .NET sont sa syntaxe moderne, son système de type puissant et son intégration serrée avec le Framework .NET, adapté à divers scénarios de développement des applications de bureau aux services Web.
