Dispozitive și redare
Dispozitive și redare
Aspose.PDF FOSS pentru .NET oferă clase de dispozitiv care redau paginile PDF în imagini raster. Fiecare dispozitiv vizează un format specific — TIFF, JPEG, PNG sau BMP — și acceptă parametri de rezoluție și calitate.
Redare în PNG
PngDevice convertește o pagină PDF într-o imagine 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);Redare în JPEG
JpegDevice convertește o pagină în JPEG cu calitate configurabilă.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Redare în TIFF
TiffDevice convertește una sau mai multe pagini într-o imagine TIFF cu mai multe pagini.TiffSettings controlează compresia, adâncimea de culoare și 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 pagesRedare în BMP
BmpDevice convertește o pagină într-un bitmap necomprimat.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Controlul rezoluției
Toate dispozitivele acceptă un obiect Resolution care specifică DPI.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityExtracție de text prin TextDevice
TextDevice extrage text dintr‑o pagină utilizând linia de procesare a dispozitivului.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Sfaturi și bune practici
- Utilizați 300 DPI pentru ieșire de calitate tipărit și 72-150 DPI pentru utilizare pe ecran/web.
TiffDevicepoate procesa întregul document într-un singur apel; alte dispozitive procesează o pagină la un moment dat.- Valorile de calitate JPEG variază de la 0-100; 85-90 oferă un echilibru bun între calitate și dimensiunea fișierului.
- Pentru conversia în lot, iterați paginile și procesați fiecare cu dispozitivul corespunzător.
- Eliberați fluxurile după procesare pentru a elibera handle-urile de fișiere.
Probleme comune
| Problemă | Cauză | Remediere |
|---|---|---|
| Imagine este neclară | Rezoluție prea mică | Crește DPI în constructorul Resolution |
| Fișier TIFF prea mare | Setări necomprimate sau de rezoluție înaltă | Configurează compresia TiffSettings |
| Fluxul de ieșire este gol | Process nu a fost apelat sau indexul paginii greșit | Verifică dacă pagina există și Process se finalizează |
Întrebări frecvente
Pot reda o gamă specifică de pagini în TIFF?
Da. TiffDevice.Process are suprasarcini care acceptă numerele paginilor de început și de sfârșit.
Ce tipuri de compresie suportă TiffSettings?
LZW, CCITT3, CCITT4, RLE, None și alte tipuri standard de compresie TIFF.
Pot controla dimensiunile imaginii de ieșire?
Da. Constructorii Device acceptă parametrii de lățime și înălțime, pe lângă sau în loc de rezoluție.
Sumar al referinței API
| Class / Method | Description |
|---|---|
PngDevice | Redă o pagină în format PNG |
JpegDevice | Redă o pagină în JPEG cu control al calității |
TiffDevice | Redă pagini în TIFF multipagină |
BmpDevice | Redă o pagină în format BMP |
ImageDevice | Clasă de bază pentru toate dispozitivele de redare a imaginilor |
DocumentDevice | Clasă de bază pentru dispozitivele care procesează documente întregi |
TextDevice | Extrage text prin intermediul conductei dispozitivului |
Resolution | Specificație DPI pentru redare |
TiffSettings | Configurare ieșire TIFF (compresie, adâncime de culoare) |