Dispositius i renderització
Dispositius i renderització
Aspose.PDF FOSS for .NET proporciona classes de dispositiu que renderitzen pàgines PDF a imatges raster. Cada dispositiu apunta a un format específic — TIFF, JPEG, PNG o BMP — i accepta paràmetres de resolució i qualitat.
Renderització a PNG
PngDevice converteix una pàgina PDF a una imatge PNG.
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);Renderització a JPEG
JpegDevice converteix una pàgina a JPEG amb qualitat configurable.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Renderització a TIFF
TiffDevice converteix una o més pàgines a una imatge TIFF multipàgina.TiffSettings controla la compressió, la profunditat de color i la forma.
var settings = new TiffSettings();
var device = new TiffDevice(new Resolution(200), settings);
using var stream = File.Create("document.tiff");
device.Process(doc, stream); // All pagesRenderització a BMP
BmpDevice converteix una pàgina a un mapa de bits sense compressió.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Control de resolució
Tots els dispositius accepten un objecte Resolution que especifica DPI.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityExtracció de text mitjançant TextDevice
TextDevice extreu text d’una pàgina utilitzant la cadena de processament del dispositiu.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Consells i bones pràctiques
- Utilitzeu 300 DPI per a una sortida d’alta qualitat d’impressió i 72-150 DPI per a ús en pantalla/web.
TiffDevicepot processar tot el document en una sola crida; altres dispositius processen una pàgina a la vegada.- Els valors de qualitat JPEG van de 0 a 100; 85-90 ofereixen un bon equilibri entre qualitat i mida del fitxer.
- Per a la conversió per lots, iteri les pàgines i processi cada una amb el dispositiu adequat.
- Allibereu els fluxos després del processament per alliberar els identificadors de fitxer.
Problemes comuns
| Problema | Causa | Solució |
|---|---|---|
| La imatge és borrosa | Resolució massa baixa | Augmenta el DPI al constructor Resolution |
| Fitxer TIFF massa gran | Configuració sense compressió o d’alta resolució | Configura la compressió TiffSettings |
| El flux de sortida està buit | Process no s’ha cridat o l’índex de pàgina és incorrecte | Verifica que la pàgina existeixi i que Process s’hagi completat |
Preguntes freqüents
Puc renderitzar un interval de pàgines específic a TIFF?
Sí. TiffDevice.Process té sobrecàrregues que accepten números de pàgina d’inici i final.
Quins tipus de compressió admet TiffSettings?
LZW, CCITT3, CCITT4, RLE, None i altres tipus de compressió TIFF estàndard.
Puc controlar les dimensions de la imatge de sortida?
Sí. Els constructors de Device accepten paràmetres d’amplada i alçada a més o en comptes de la resolució.
Resum de la referència de l’API
| Class / Method | Description |
|---|---|
PngDevice | Renderitza una pàgina al format PNG |
JpegDevice | Renderitza una pàgina a JPEG amb control de qualitat |
TiffDevice | Renderitza pàgines a TIFF multipàgina |
BmpDevice | Renderitza una pàgina al format BMP |
ImageDevice | Classe base per a tots els dispositius de renderització d’imatges |
DocumentDevice | Classe base per a dispositius que processen documents complets |
TextDevice | Extreu text a través de la canalització del dispositiu |
Resolution | Especificació DPI per a la renderització |
TiffSettings | Configuració de sortida TIFF (compressió, profunditat de color) |