Enheder og rendering
Enheder og rendering
Aspose.PDF FOSS for .NET leverer enhedsklasser, der gengiver PDF‑sider til rasterbilleder. Hver enhed målretter et specifikt format — TIFF, JPEG, PNG eller BMP — og accepterer opløsning‑ og kvalitetsparametre.
Rendering til PNG
PngDevice konverterer en PDF-side til et PNG-billede.
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 til JPEG
JpegDevice konverterer en side til JPEG med konfigurerbar kvalitet.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Rendering til TIFF
TiffDevice konverterer én eller flere sider til et flersidet TIFF-billede.TiffSettings styrer kompression, farvedybde og 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 pagesRendering til BMP
BmpDevice konverterer en side til en ukomprimeret bitmap.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Opløsningskontrol
Alle enheder accepterer et Resolution-objekt, der angiver DPI.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityTekstudtrækning via TextDevice
TextDevice udtrækker tekst fra en side ved hjælp af enhedsbehandlingspipeline.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Tips og bedste praksis
- Brug 300 DPI til udskriftskvalitet og 72-150 DPI til skærm/web-brug.
TiffDevicekan behandle hele dokumentet i ét kald; andre enheder behandler én side ad gangen.- JPEG-kvalitetsværdier spænder fra 0-100; 85-90 giver en god balance mellem kvalitet og filstørrelse.
- Ved batchkonvertering skal du iterere siderne og behandle hver med den passende enhed.
- Frigør streams efter behandling for at frigive filhåndtag.
Almindelige problemer
| Issue | Cause | Fix |
|---|---|---|
| Billedet er sløret | Opløsning for lav | Øg DPI i Resolution konstruktøren |
| TIFF-fil for stor | Ukomprimeret eller højopløsningsindstillinger | Konfigurer TiffSettings kompression |
| Outputstrøm er tom | Process ikke kaldt eller sideindeks forkert | Verificer at siden findes og Process fuldføres |
Ofte stillede spørgsmål
Kan jeg gengive et specifikt sideområde til TIFF?
Ja. TiffDevice.Process har overloads, der accepterer start- og slutside‑numre.
Hvilke komprimeringstyper understøtter TiffSettings?
LZW, CCITT3, CCITT4, RLE, Ingen og andre standard TIFF‑komprimeringstyper.
Kan jeg kontrollere outputbilledets dimensioner?
Ja. Device‑konstruktører accepterer bredde‑ og højdeparametre ud over eller i stedet for opløsning.
API-referencens oversigt
| Class / Method | Description |
|---|---|
PngDevice | Render en side til PNG-format |
JpegDevice | Render en side til JPEG med kvalitetskontrol |
TiffDevice | Render sider til multi-side TIFF |
BmpDevice | Render en side til BMP-format |
ImageDevice | Basisklasse for alle billedrenderingsenheder |
DocumentDevice | Basisklasse for enheder, der behandler hele dokumenter |
TextDevice | Udtræk tekst via enhedens pipeline |
Resolution | DPI-specifikation for rendering |
TiffSettings | TIFF-uddata konfiguration (kompression, farvedybde) |