RecolorDocument

Cor

Descrição

Converte todas as páginas do documento para um único espaço de cor

Sintaxe

Delphi

Function TPDFlib.RecolorDocument(TargetSpace: Integer): Integer;

Parâmetros

TargetSpace1 grey, 2 RGB, 3 CMYK.

Valores retornados

CountQuantas cores foram convertidas em todo o documento.
0Nada precisava de conversão, ou TargetSpace estava fora de 1 a 3. Uma página cujas cores já estão no espaço alvo mantém os bytes originais dela.

Observações

A conversão usa a aritmética comum de device, não gerenciada por perfil de cor: um documento que declara apenas DeviceRGB não carrega perfil nenhum pelo qual converter. RGB vira cinza pelos pesos de luminância do ITU-R BT.601, e CMYK converte como descrito na ISO 32000-1 §8.6.4.4 — que é o que um visualizador já faz ao exibir um documento CMYK na tela.

Cores definidas via espaço ICCBased, Separation, Indexed ou Pattern ficam como estão. Ler os componentes sem o perfil deles mudaria a aparência da página em vez de preservá-la, então tal documento é convertido apenas nas partes que nomeiam diretamente um device space.

As imagens que uma página desenha também são convertidas, quando a imagem tem oito bits por componente, um espaço de cor de dispositivo e nenhuma compressão ou Flate simples Uma imagem JPEG ou fax teria de ser recodificada, o que é uma operação diferente de converter suas cores, então ela mantém seus próprios bytes

Uma imagem indexada é convertida através de sua tabela de cores, de modo que suas amostras mantêm os índices que já tinham Esse caminho não se importa com o empacotamento ou a compressão das amostras, e é assim que uma captura de tela ou gráfico com paleta converte mesmo que suas amostras não pudessem ser reescritas

Gradientes são convertidos junto com as funções por trás deles, de modo que o espaço e as stops sempre concordam Um gradiente construído a partir de uma função sampled ou PostScript mantém suas próprias cores, assim como os tipos mesh shading, que carregam suas cores em um stream em vez de em uma função

Soft masks e stencil masks ficam de fora Ambos são lidos como cobertura em vez de cor, e converter um deles deixaria a página exibindo a máscara como uma figura

Geometria, texto, clipping e todos os demais operators são gravados de volta sem alteração.

A página selecionada é restaurada quando a chamada retorna

Exemplo

// Send a mixed-colour document to a press that expects CMYK
PDF.LoadFromFile('brochure.pdf', '');
Converted := PDF.RecolorDocument(3);
PDF.SaveToFile('brochure-cmyk.pdf');

Veja também

RecolorPage, SetFillColor, SetFillColorCMYK