Geräte und Rendering
Geräte und Rendering
Aspose.PDF FOSS für .NET stellt Geräteklassen bereit, die PDF-Seiten in Rasterbilder rendern. Jedes Gerät zielt auf ein bestimmtes Format ab — TIFF, JPEG, PNG oder BMP — und akzeptiert Auflösungs- und Qualitätsparameter.
Rendering zu PNG
PngDevice konvertiert eine PDF-Seite in ein PNG-Bild.
using var doc = Document.Open(pdfBytes);
var device = new PngDevice(new Resolution(300));
using var stream = File.Create("page1.png");
device.Process(doc.Pages[1], stream);Rendering zu JPEG
JpegDevice konvertiert eine Seite in JPEG mit konfigurierbarer Qualität.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Rendering zu TIFF
TiffDevice konvertiert eine oder mehrere Seiten in ein mehrseitiges TIFF-Bild. TiffSettings steuert Kompression, Farbtiefe und Form.
var settings = new TiffSettings();
var device = new TiffDevice(new Resolution(200), settings);
using var stream = File.Create("document.tiff");
device.Process(doc, stream); // All pagesRendern nach BMP
BmpDevice konvertiert eine Seite in ein unkomprimiertes Bitmap.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Auflösungssteuerung
Alle Geräte akzeptieren ein Resolution-Objekt, das DPI angibt.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityTextextraktion über TextDevice
TextDevice extrahiert Text aus einer Seite mithilfe der Geräteverarbeitungspipeline.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Tipps und bewährte Verfahren
- Verwenden Sie 300 DPI für druckqualitativen Output und 72-150 DPI für Bildschirm-/Web-Verwendung.
TiffDevicekann das gesamte Dokument in einem Aufruf verarbeiten; andere Geräte verarbeiten jeweils eine Seite.- JPEG-Qualitätswerte liegen zwischen 0-100; 85-90 bieten ein gutes Gleichgewicht zwischen Qualität und Dateigröße.
- Für die Stapelkonvertierung iterieren Sie über die Seiten und verarbeiten jede mit dem entsprechenden Gerät.
- Schließen Sie Streams nach der Verarbeitung, um Dateihandles freizugeben.
Häufige Probleme
| Problem | Ursache | Lösung |
|---|---|---|
| Bild ist unscharf | Auflösung zu niedrig | Erhöhe DPI im Resolution-Konstruktor |
| TIFF-Datei zu groß | Unkomprimierte oder hochauflösende Einstellungen | Konfiguriere TiffSettings Komprimierung |
| Ausgabestream ist leer | Process nicht aufgerufen oder Seitenindex falsch | Überprüfe, ob die Seite existiert und Process abgeschlossen wird |
FAQ
Kann ich einen bestimmten Seitenbereich als TIFF rendern?
Ja. TiffDevice.Process hat Überladungen, die Start- und Endseitennummern akzeptieren.
Welche Kompressionstypen unterstützt TiffSettings?
LZW, CCITT3, CCITT4, RLE, None und andere standardmäßige TIFF-Kompressionstypen.
Kann ich die Abmessungen des Ausgabebildes steuern?
Ja. Device-Konstruktoren akzeptieren Breiten- und Höhenparameter zusätzlich zu oder anstelle von Auflösung.
API Reference Zusammenfassung
| Klasse / Methode | Beschreibung |
|---|---|
PngDevice | Seite in PNG-Format rendern |
JpegDevice | Eine Seite im JPEG-Format rendern mit Qualitätskontrolle |
TiffDevice | Seiten in ein mehrseitiges TIFF rendern |
BmpDevice | Eine Seite im BMP-Format rendern |
ImageDevice | Basisklasse für alle Bildrendering-Geräte |
DocumentDevice | Basisklasse für Geräte, die ganze Dokumente verarbeiten |
TextDevice | Text über die Geräte-Pipeline extrahieren |
Resolution | DPI-Spezifikation für das Rendern |
TiffSettings | TIFF-Ausgabekonfiguration (Kompression, Farbtiefe) |