Пристрої та візуалізація
Пристрої та візуалізація
Aspose.PDF FOSS for .NET надає класи пристроїв, які рендерять сторінки PDF у растрові зображення. Кожен пристрій орієнтований на конкретний формат — TIFF, JPEG, PNG або BMP — і приймає параметри роздільної здатності та якості.
Рендеринг у PNG
PngDevice перетворює сторінку PDF у зображення 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);Візуалізація у JPEG
JpegDevice перетворює сторінку у JPEG з налаштовуваною якістю.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Рендеринг у TIFF
TiffDevice перетворює одну або декілька сторінок у багатосторінкове зображення TIFF.TiffSettings керує стисканням, глибиною кольору та формою.
var settings = new TiffSettings();
var device = new TiffDevice(new Resolution(200), settings);
using var stream = File.Create("document.tiff");
device.Process(doc, stream); // All pagesРендеринг у BMP
BmpDevice перетворює сторінку у несжатий бітмап.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Контроль роздільної здатності
Усі пристрої приймають об’єкт Resolution, що вказує DPI.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityВидобування тексту за допомогою TextDevice
TextDevice витягує текст зі сторінки, використовуючи конвеєр обробки пристрою.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Поради та найкращі практики
- Використовуйте 300 DPI для виведення високої якості друку та 72‑150 DPI для екрану/веб‑використання.
TiffDeviceможе обробляти весь документ за один виклик; інші пристрої обробляють по одній сторінці за раз.- Значення якості JPEG варіюються від 0 до 100; 85‑90 забезпечують хороший баланс між якістю та розміром файлу.
- Для пакетного перетворення ітеруйте сторінки та обробляйте кожну за допомогою відповідного пристрою.
- Звільняйте потоки після обробки, щоб вивільнити дескриптори файлів.
Загальні проблеми
| Issue | Cause | Fix |
|---|---|---|
| Image is blurry | Resolution too low | Increase DPI in the Resolution constructor |
| TIFF file too large | Uncompressed or high-resolution settings | Configure TiffSettings compression |
| Output stream is empty | Process not called or page index wrong | Verify page exists and Process completes |
Часті питання
Чи можу я рендерити певний діапазон сторінок у TIFF?
Так. TiffDevice.Process має перевантаження, які приймають номери початкової та кінцевої сторінок.
Які типи стиснення підтримує TiffSettings?
LZW, CCITT3, CCITT4, RLE, Немає, і інші стандартні типи стиснення TIFF.
Чи можу я контролювати розміри вихідного зображення?
Так. Конструктори пристроїв приймають параметри ширини та висоти на додачу до або замість роздільної здатності.
Огляд довідки API
| Class / Method | Description |
|---|---|
PngDevice | Відобразити сторінку у формат PNG |
JpegDevice | Відобразити сторінку у формат JPEG з контролем якості |
TiffDevice | Відобразити сторінки у багатосторінковий TIFF |
BmpDevice | Відобразити сторінку у формат BMP |
ImageDevice | Базовий клас для всіх пристроїв рендерингу зображень |
DocumentDevice | Базовий клас для пристроїв, які обробляють повні документи |
TextDevice | Витягнути текст через конвеєр пристрою |
Resolution | Специфікація DPI для рендерингу |
TiffSettings | Конфігурація виводу TIFF (стиснення, глибина кольору) |