CompressImages

Processamento de imagens, propriedades do documento

Descrição

Define o modo de compressão predefinido aplicado aos dados de imagens raster em bruto adicionados ao documento depois desta chamada. A definição afeta imagens cujos píxeis são carregados sem compressão (BMP, matrizes de píxeis em bruto); as imagens já comprimidas (JPEG, JPEG 2000, CCITT, JBIG2) conservam a codificação existente e são armazenadas tal como estão, pois voltar a comprimi-las aumentaria o ficheiro e degradaria a qualidade

Sintaxe

Delphi

Function TPDFlib.CompressImages(Compress: Integer): Integer;

ActiveX

Function PDFlib::CompressImages(Compress As Long) As Long

DLL

int DLCompressImages(int InstanceID, int Compress);

Parâmetros

Compress0 — armazena imagens raster em bruto sem compressão.
1 — comprime com Flate as imagens raster em bruto (filtro /FlateDecode)

Valores devolvidos

0O parâmetro Compress estava fora do intervalo
1A definição de compressão de imagem foi atualizada

Observações

A definição só afeta as imagens adicionadas após a chamada. A predefinição é comprimir. Desativar a compressão pode ocasionalmente ser útil na integração com um compositor a jusante que não suporte fluxos de imagens descodificados com Flate; em utilização normal, mantenha a compressão ativada

A compressão Flate é sem perdas. Para a compressão JPEG com perdas de uma imagem raster em bruto, codifique a origem como JPEG antes de a adicionar e utilize AddImageFromFile ou AddImageFromStream — o fluxo de bytes JPEG é então incorporado diretamente com um filtro /DCTDecode

Exemplo

// Compress raw bitmaps but leave the pre-encoded JPEG as-is
PDF.CompressImages(1);
PDF.AddImageFromFile('logo.bmp');        // BMP -> flate compressed
PDF.AddImageFromFile('photo.jpg');       // JPEG bytes embedded directly (DCT)
PDF.AddImageFromFile('chart.png');       // PNG decoded -> flate compressed

Consulte também

CompressContent, CompressFonts, AddImageFromFile, AddImageFromStream