using IronPdf;
// Disable local disk access or cross-origin requests
Installation.EnableWebSecurity = true;
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
// Create a PDF from a HTML string using C#
var pdf = renderer.RenderHtmlAsPdf("<h1>Hello World</h1>");
// Export to a file or Stream
pdf.SaveAs("output.pdf");
// Advanced Example with HTML Assets
// Load external html assets: Images, CSS and JavaScript.
// An optional BasePath 'C:\site\assets\' is set as the file location to load assets from
var myAdvancedPdf = renderer.RenderHtmlAsPdf("<img src='icons/iron.png'>", @"C:\site\assets\");
myAdvancedPdf.SaveAs("html-with-assets.pdf");
Humanizer ist eine leistungsstarke und flexible .NET-Bibliothek, die die Arbeit mit Daten vereinfacht und humanisiert, insbesondere wenn es darum geht, Informationen in einem benutzerfreundlichen Format darzustellen. Ob Sie Datumsangaben in relative Zeitstrings konvertieren müssen("Vor 3 Tagen")humanizer bietet eine Vielzahl von Werkzeugen und Erweiterungsmethoden, um diese Aufgaben elegant in C#.NET zu erledigen, um entmenschlichte Eingabestrings in Sätze zu konvertieren und lange Texte abzuschneiden.
In diesem Artikel werden wir ein detailliertes Tutorial von Humanizer in C# diskutieren. Wir werden auch besprechen, wie man PDF-Dokumente mit Humanizer und IronPDF for C# PDF Library erzeugt.
Einrichtung von Humanizer in C
Um mit Humanizer zu beginnen, müssen Sie die Bibliothek über NuGet installieren. In Ihrem Projekt können Sie dies über die Paketmanager-Konsole mit dem folgenden Befehl tun:
Install-Package Humanizer
Install-Package Humanizer
'INSTANT VB TODO TASK: The following line uses invalid syntax:
'Install-Package Humanizer
Wenn Sie die .NET Core CLI verwenden, können Sie Humanizer alternativ mit hinzufügen:
dotnet add package Humanizer
Nach der Installation können Sie Humanizer verwenden, indem Sie den entsprechenden Namespace in Ihre C#-Dateien aufnehmen:
using Humanizer;
using Humanizer;
Imports Humanizer
Humanisierung von Daten und Zeiten
Eine der häufigsten Verwendungen von Humanizer ist die Konvertierung von Datums- und Zeitangaben in menschenlesbare Formate, Zeitspannen, Zahlen und Mengen mit der Methode Humanize. Dies ist besonders nützlich für die Anzeige von relativen Zeiten, wie "vor 2 Stunden" oder "in 5 Tagen".
Dim pastDate As DateTime = DateTime.Now.AddDays(-3)
Dim humanizedTime As String = pastDate.Humanize() ' Output: "3 days ago"
Dim futureDate As DateTime = DateTime.Now.AddHours(5)
Dim futureHumanizedTime As String = futureDate.Humanize() ' Output: "in 5 hours"
Die Humanizer-Erweiterungsmethode behandelt automatisch verschiedene Zeiteinheiten und passt sogar die grammatikalische Korrektheit an.
Humanisierung der Zeitspannen
Humanizer kann auch `TimeSpan'-Objekte vermenschlichen, so dass es einfach ist, Zeitspannen in einem lesbaren Format anzuzeigen.
Dim timeSpan As TimeSpan = System.TimeSpan.FromMinutes(123)
Dim humanizedTimeSpan As String = timeSpan.Humanize(2) ' Output: "2 hours, 3 minutes"
Arbeiten mit Zahlen
Humanizer bietet mehrere Methoden, um Zahlen in menschenlesbare Wörter umzuwandeln und um Ordnungszahlen zu behandeln.
Beispiel: Zahlen in Wörter umwandeln
int number = 123;
string words = number.ToWords(); // Output: "one hundred and twenty-three"
int number = 123;
string words = number.ToWords(); // Output: "one hundred and twenty-three"
Dim number As Integer = 123
Dim words As String = number.ToWords() ' Output: "one hundred and twenty-three"
Beispiel: Umwandlung von Zahlen in Ordnungszahlen
int number = 21;
string ordinal = number.ToOrdinalWords(); // Output: "twenty-first"
int number = 21;
string ordinal = number.ToOrdinalWords(); // Output: "twenty-first"
Dim number As Integer = 21
Dim ordinal As String = number.ToOrdinalWords() ' Output: "twenty-first"
Pluralisierung und Singularisierung
Humanizer erleichtert die Umwandlung von Wörtern zwischen ihren Singular- und Pluralformen, was bei der dynamischen Generierung von Langtexten auf der Grundlage von Mengen nützlich ist.
Beispiel: Pluralisierung und Singularisierung von Wörtern
Dim singular As String = "car"
Dim plural As String = singular.Pluralize() ' Output: "cars"
Dim word As String = "people"
Dim singularForm As String = word.Singularize() ' Output: "person"
Humanizer verarbeitet auch unregelmäßige Pluralisierungen und Singularisierungen und ist somit für verschiedene Anwendungsfälle geeignet.
Formatierung von Enums
Enums werden häufig in C#-Anwendungen verwendet, um eine Reihe von benannten Konstanten darzustellen. Humanizer kann Enum-Werte in menschenlesbare Zeichenketten umwandeln.
Private enumValue As MyEnum = MyEnum.FirstValue
Private humanizedEnum As String = enumValue.Humanize()
System.Console.WriteLine(humanizedEnum)
'INSTANT VB TODO TASK: Local functions are not converted by Instant VB:
'public enum MyEnum
'{
' FirstValue,
' SecondValue
'} ' Output: "First value"
Diese Methode kann besonders für die Anzeige von benutzerfreundlichen Beschriftungen in der Benutzeroberfläche nützlich sein.
Humanisierung von Bytegrößen
Eine weitere praktische Funktion von Humanizer ist die Möglichkeit, Bytegrößen zu humanisieren, indem große Byte-Werte in lesbare Formate wie KB, MB oder GB umgewandelt werden.
Dim bytes As Long = 1048576
Dim humanizedBytes As String = bytes.Bytes().Humanize() ' Output: "1 MB"
Erweiterte Szenarien
Der Humanizer ist nicht auf die oben beschriebenen Basisszenarien beschränkt. Es unterstützt eine breite Palette fortgeschrittener Funktionen wie die Methode "Truncate" und mehrere Sprachen und Erweiterungen.
Beispiel: Humanisierung von DateTime Offsets
Humanizer kann auch DateTimeOffset verarbeiten, was für Anwendungen, die mit Zeitzonen arbeiten, nützlich ist.
Dim dateTimeOffset As DateTimeOffset = System.DateTimeOffset.Now.AddDays(-2)
Dim humanizedDateTimeOffset As String = dateTimeOffset.Humanize() ' Output: "2 days ago"
Überlegungen zur Leistung
Humanizer wurde entwickelt, um effizient zu sein, aber wie jede Bibliothek hängt die Leistung davon ab, wie sie verwendet wird. Bei Anwendungen, die eine hohe Leistung erfordern, insbesondere bei der Verarbeitung großer Datenmengen oder in Echtzeit, müssen die Auswirkungen häufiger Humanisierungsvorgänge unbedingt berücksichtigt werden.
IronPDF für C
IronPDF ist eine umfassende Bibliothek zur PDF-Erzeugung und -Bearbeitung für .NET-Anwendungen. Es ermöglicht Entwicklern das einfache Erstellen, Lesen, Bearbeiten und Extrahieren von Inhalten aus PDF-Dateien. IronPDF ist benutzerfreundlich gestaltet und bietet eine breite Palette von Funktionen wie die Konvertierung von HTML in PDF, das Zusammenführen von Dokumenten, das Hinzufügen von Wasserzeichen und vieles mehr. Seine Vielseitigkeit und seine leistungsstarken Funktionen machen es zu einer ausgezeichneten Wahl für den Umgang mit PDF-Dokumenten in C#-Projekten.
Installation von IronPDF über den NuGet-Paketmanager
Folgen Sie diesen Schritten, um IronPDF mit dem NuGet Package Manager zu installieren:
Öffnen Sie Ihr Projekt in Visual Studio:
Starten Sie Visual Studio und öffnen Sie Ihr bestehendes C#-Projekt oder erstellen Sie ein neues.
Öffnen Sie den NuGet Package Manager:
Klicken Sie mit der rechten Maustaste auf Ihr Projekt im Projektmappen-Explorer.
Wählen Sie "NuGet-Pakete verwalten..." aus dem Kontextmenü.
IronPDF installieren:
Gehen Sie im NuGet-Paketmanager auf die Registerkarte "Durchsuchen".
Suchen Sie nach IronPDF.
Wählen Sie das Paket IronPDF aus den Suchergebnissen aus.
Klicken Sie auf die Schaltfläche "Installieren", um IronPDF zu Ihrem Projekt hinzuzufügen.
Wenn Sie diese Schritte befolgen, wird IronPDF installiert und ist in Ihrem C#-Projekt einsatzbereit, so dass Sie seine leistungsstarken PDF-Bearbeitungsfunktionen nutzen können.
C# Humanizer und IronPDF Codebeispiel
using Humanizer;
using IronPdf;
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
List<string> content = GenerateHumanizedContent();
string htmlContent = "<h1>Humanizer Examples</h1><ul>";
// Iterate over each item in the List and add it to the HTML string
foreach (var item in content)
{
htmlContent += $"<li>{item}</li>";
}
htmlContent += "</ul>";
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Export to a file or stream
pdf.SaveAs("output.pdf");
}
static List<string> GenerateHumanizedContent()
{
List<string> content = new List<string>();
// DateTime examples
DateTime pastDate = DateTime.Now.AddDays(-3);
DateTime futureDate = DateTime.Now.AddHours(5);
content.Add($"DateTime.Now: {DateTime.Now}");
content.Add($"3 days ago: {pastDate.Humanize()}");
content.Add($"In 5 hours: {futureDate.Humanize()}");
// TimeSpan examples
TimeSpan timeSpan = TimeSpan.FromMinutes(123);
content.Add($"TimeSpan of 123 minutes: {timeSpan.Humanize()}");
// Number examples
int number = 12345;
content.Add($"Number 12345 in words: {number.ToWords()}");
content.Add($"Ordinal of 21: {21.ToOrdinalWords()}");
// Pluralization examples
string singular = "car";
content.Add($"Plural of 'car': {singular.Pluralize()}");
string plural = "children";
content.Add($"Singular of 'children': {plural.Singularize()}");
// Byte size examples
long bytes = 1048576;
content.Add($"1,048,576 bytes: {bytes.Bytes().Humanize()}");
return content;
}
}
using Humanizer;
using IronPdf;
using System;
using System.Collections.Generic;
class Program
{
static void Main()
{
// Instantiate Renderer
var renderer = new ChromePdfRenderer();
List<string> content = GenerateHumanizedContent();
string htmlContent = "<h1>Humanizer Examples</h1><ul>";
// Iterate over each item in the List and add it to the HTML string
foreach (var item in content)
{
htmlContent += $"<li>{item}</li>";
}
htmlContent += "</ul>";
// Create a PDF from an HTML string using C#
var pdf = renderer.RenderHtmlAsPdf(htmlContent);
// Export to a file or stream
pdf.SaveAs("output.pdf");
}
static List<string> GenerateHumanizedContent()
{
List<string> content = new List<string>();
// DateTime examples
DateTime pastDate = DateTime.Now.AddDays(-3);
DateTime futureDate = DateTime.Now.AddHours(5);
content.Add($"DateTime.Now: {DateTime.Now}");
content.Add($"3 days ago: {pastDate.Humanize()}");
content.Add($"In 5 hours: {futureDate.Humanize()}");
// TimeSpan examples
TimeSpan timeSpan = TimeSpan.FromMinutes(123);
content.Add($"TimeSpan of 123 minutes: {timeSpan.Humanize()}");
// Number examples
int number = 12345;
content.Add($"Number 12345 in words: {number.ToWords()}");
content.Add($"Ordinal of 21: {21.ToOrdinalWords()}");
// Pluralization examples
string singular = "car";
content.Add($"Plural of 'car': {singular.Pluralize()}");
string plural = "children";
content.Add($"Singular of 'children': {plural.Singularize()}");
// Byte size examples
long bytes = 1048576;
content.Add($"1,048,576 bytes: {bytes.Bytes().Humanize()}");
return content;
}
}
Imports Humanizer
Imports IronPdf
Imports System
Imports System.Collections.Generic
Friend Class Program
Shared Sub Main()
' Instantiate Renderer
Dim renderer = New ChromePdfRenderer()
Dim content As List(Of String) = GenerateHumanizedContent()
Dim htmlContent As String = "<h1>Humanizer Examples</h1><ul>"
' Iterate over each item in the List and add it to the HTML string
For Each item In content
htmlContent &= $"<li>{item}</li>"
Next item
htmlContent &= "</ul>"
' Create a PDF from an HTML string using C#
Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
' Export to a file or stream
pdf.SaveAs("output.pdf")
End Sub
Private Shared Function GenerateHumanizedContent() As List(Of String)
Dim content As New List(Of String)()
' DateTime examples
Dim pastDate As DateTime = DateTime.Now.AddDays(-3)
Dim futureDate As DateTime = DateTime.Now.AddHours(5)
content.Add($"DateTime.Now: {DateTime.Now}")
content.Add($"3 days ago: {pastDate.Humanize()}")
content.Add($"In 5 hours: {futureDate.Humanize()}")
' TimeSpan examples
Dim timeSpan As TimeSpan = System.TimeSpan.FromMinutes(123)
content.Add($"TimeSpan of 123 minutes: {timeSpan.Humanize()}")
' Number examples
Dim number As Integer = 12345
content.Add($"Number 12345 in words: {number.ToWords()}")
content.Add($"Ordinal of 21: {21.ToOrdinalWords()}")
' Pluralization examples
Dim singular As String = "car"
content.Add($"Plural of 'car': {singular.Pluralize()}")
Dim plural As String = "children"
content.Add($"Singular of 'children': {plural.Singularize()}")
' Byte size examples
Dim bytes As Long = 1048576
content.Add($"1,048,576 bytes: {bytes.Bytes().Humanize()}")
Return content
End Function
End Class
Schlussfolgerung
Humanizer ist eine unverzichtbare Bibliothek für .NET-Entwickler, die Anwendungen erstellen möchten, die Informationen in einem benutzerfreundlichen und für Menschen lesbaren Format darstellen. Sein breites Spektrum an Funktionen, von der Datums- und Zeitanzeige bis zur Formatierung von Zahlen und Aufzählungen, macht es zu einem vielseitigen Werkzeug zur Verbesserung der Benutzerfreundlichkeit von Anwendungen. Durch den Einsatz von Humanizer können Entwickler Zeit und Aufwand bei der Implementierung benutzerdefinierter Formatierungslogik sparen und sicherstellen, dass ihre Anwendungen Daten effektiver an die Endbenutzer weitergeben.
Ebenso bietet IronPDF umfassende Funktionen zur PDF-Erzeugung und -Bearbeitung und ist damit eine ausgezeichnete Wahl für die Erstellung und Bearbeitung von PDF-Dokumenten in C#-Projekten. Zusammen können Humanizer und IronPDF die Funktionalität und Präsentation von .NET-Anwendungen erheblich verbessern. Weitere Einzelheiten zur IronPDF-Lizenzierung finden Sie in derIronPDF-Lizenzierungsinformationen. Um mehr zu erfahren, besuchen Sie unsereAusführliche Anleitung zur Konvertierung von HTML in PDF.
Jordi beherrscht vor allem Python, C# und C++. Wenn er seine Fähigkeiten bei Iron Software nicht einsetzt, programmiert er Spiele. Durch seine Mitverantwortung für Produkttests, Produktentwicklung und Forschung trägt Jordi wesentlich zur kontinuierlichen Produktverbesserung bei. Die vielseitigen Erfahrungen, die er sammelt, bieten ihm immer wieder neue Herausforderungen, und er sagt, dass dies einer seiner Lieblingsaspekte bei Iron Software ist. Jordi wuchs in Miami, Florida, auf und studierte Informatik und Statistik an der University of Florida.
< PREVIOUS TensorFlow .NET (Wie es für Entwickler funktioniert)
NÄCHSTES > OpenAPI .NET (Wie es für Entwickler funktioniert)