Dispositivos e Rendering
Dispositivos e Rendering
Aspose.PDF FOSS for .NET provides device classes that render PDF pages to raster images. Each device targets a specific format — TIFF, JPEG, PNG, or BMP — and accepts resolution and quality parameters.
Rendering para PNG
PngDevice converte uma página PDF em imagem 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);Render para JPEG
JpegDevice Converte uma página em JPEG com qualidade configurável.
var device = new JpegDevice(new Resolution(150), 90); // 90% quality
using var stream = File.Create("page1.jpg");
device.Process(doc.Pages[1], stream);Rendering para TIFF
TiffDevice Converte uma ou mais páginas numa imagem TIFF de várias página. TiffSettings Controla a compressão, profundidade de cor e 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 pagesRendering para BMP
BmpDevice converte uma página num mapa de bits não comprimido.
var device = new BmpDevice(new Resolution(300));
using var stream = File.Create("page1.bmp");
device.Process(doc.Pages[1], stream);Controlo da resolução
Todos os dispositivos aceitam um Resolution Objeto que especifica o DPI.
var lowRes = new Resolution(72); // Screen quality
var midRes = new Resolution(150); // Print draft
var hiRes = new Resolution(300); // Print qualityExtração de texto através do TextDevice
TextDevice extrai texto de uma página utilizando o pipeline de processamento do dispositivo.
var device = new TextDevice();
using var stream = new MemoryStream();
device.Process(doc.Pages[1], stream);
string text = System.Text.Encoding.UTF8.GetString(stream.ToArray());Dicas e melhores práticas
- Utilize 300 DPI para saída de qualidade de impressão e 72-150 DPi para uso na tela/web.
TiffDevicepode processar todo o documento numa única chamada; outros dispositivos processam uma página de cada vez.- Os valores de qualidade JPEG variam entre 0 e 100; 85 a 90 fornece um bom equilíbrio entre qualidade e tamanho do arquivo.
- Para conversão em lote, iterar páginas e processar cada uma com o dispositivo apropriado.
- Dispõe dos fluxos após o processamento para liberar os manobras de arquivo.
Problemas comuns
| Emissão | Causa da morte | Correção |
|---|---|---|
| Imagem turva . | Resolução demasiado baixa | Aumentar o DPI no mercado de trabalho. Resolution constructor |
| Arquivo TIFF muito grande | Configurações não comprimidas ou de alta resolução | Configuração: TiffSettings compressão |
| Fluxo de saída vazio | Process não chamado ou índice de página errado | Verificar a página e Process Completar |
FAQ
Posso render um intervalo de página específico para TIFF?
- Sim, é verdade.
TiffDevice.Processtem sobrecargas que aceitam números de página inicial e final.
Que tipos de compressão suportam o TiffSettings?
LZW, CCITT3, CCitt4, RLE, None e outros tipos de compressão TIFF padrão.
Posso controlar as dimensões da imagem de saída?
Sim, os fabricantes de dispositivos aceitam parâmetros de largura e altura em adição ou em vez da resolução.
Resumo de referência da API
| Classe / Método | Descrição: |
|---|---|
PngDevice | Transformar uma página em formato PNG |
JpegDevice | Transformar uma página em JPEG com controle de qualidade |
TiffDevice | Render páginas em TIFF de várias págnas |
BmpDevice | Transformar uma página no formato BMP |
ImageDevice | Classe de base para todos os dispositivos de reprodução de imagens |
DocumentDevice | Classe de base para dispositivos que processam documentos inteiros |
TextDevice | Extrair texto através do pipeline de dispositivo |
Resolution | Especificação de DPI para a reprodução |
TiffSettings | Configuração de saída TIFF (compressão, profundidade da cor) |