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
| Compress | 0 — armazena imagens raster em bruto sem compressão. 1 — comprime com Flate as imagens raster em bruto (filtro /FlateDecode) |
|---|
Valores devolvidos
| 0 | O parâmetro Compress estava fora do intervalo |
|---|---|
| 1 | A 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 compressedConsulte também
CompressContent, CompressFonts, AddImageFromFile, AddImageFromStream