A primeira e mais importante pergunta em sua mente pode ser: trata-se de converter uma imagem RGB apenas em tons de cinza? Não, você pode converter praticamente qualquer formato de documento (incluindo imagens) em uma imagem monocromática em preto e branco ou em tons de cinza. O contraste varia do preto na intensidade mais fraca ao branco na intensidade mais forte. Neste artigo, discutiremos como converter documentos PDF coloridos em formatos de imagem JPG e PNG em tons de cinza usando C#.

PDF convertido para tons de cinza

Esse recurso é bastante útil se você for processar imagens. Como a imagem RGB é representada por 3 canais e contém muitos dados/ruído, portanto, é necessário mais poder computacional para processar tal imagem. Por outro lado, uma imagem em tons de cinza torna esse processo comparativamente fácil.

API .NET para converter documentos em tons de cinza

GroupDocs.Conversion for .NET é uma API usada para conversão de documentos entre vários formatos de arquivo e tipos de imagem suportados. Os resultados da conversão podem ser facilmente personalizados e ajustados com várias opções flexíveis. Usarei esta API para converter documentos PDF em imagens JPG e PNG em tons de cinza.

Você pode baixar as DLLs ou o instalador MSI na seção de downloads ou instalar a API em seu aplicativo .NET via NuGet.

PM> Install-Package GroupDocs.Conversion

Se falamos de sua implementação, trata-se de uma API back-end que pode ser integrada ou implementada dentro de qualquer aplicação .NET sem nenhuma dependência. Para mais informações sobre sua API, visite sua documentação.

Converter PDF em imagem JPG em escala de cinza usando C#

Vamos atingir rapidamente o objetivo transformando o documento PDF colorido em formatos de imagem em preto e branco. As etapas a seguir mostram como converter o PDF em JPG em tons de cinza usando C#.

  • Carregue o documento PDF usando a classe Converter.
  • Prepare as opções de conversão de imagem.
  • Defina o formato do arquivo de conversão como JPG.
  • Defina a opção de tons de cinza como verdadeiro.
  • Converta em imagem usando o método Convert.

O código-fonte C# a seguir converte o documento PDF em uma imagem JPG em escala de cinza.

// Converter PDF para JPG em escala de cinza em C#
using (Converter converter = new Converter("path/document.pdf"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Jpg,
        Grayscale = true,
        
        // Opções de conversão adicionais
        Height = 1024,       
        Width = 1024,
        FlipMode = ImageFlipModes.FlipX,
        RotateAngle = 90,
        /*
        Brightness = 50,// Brightness
        Gamma = 0.5F,   // Gamma Settings
        Contrast = 50   // Contrast
        */
    };
    converter.Convert("path/grayscaleDocument.jpg", options);
}

Além disso, existem muitas outras opções para controlar a altura, largura, inversão horizontal e vertical e rotações do documento. Você também pode aplicar as marcas d’água com configurações diferentes à imagem de saída.

Converter PDF em imagem PNG em escala de cinza usando C#

Da mesma forma, o documento PDF colorido pode ser convertido em outros formatos de imagem em escala de cinza. As etapas a seguir mostram como converter o PDF em PNG em escala de cinza usando C#.

  • Carregue o documento PDF usando a classe Converter.
  • Prepare as opções de conversão de imagem.
  • Defina o formato do arquivo de conversão como PNG.
  • Defina a opção de tons de cinza como verdadeiro.
  • Converta para imagem PNG usando o método Convert.

O código-fonte C# a seguir converte o documento PDF em uma imagem PNG em tons de cinza.

// Converter PDF para PNG em escala de cinza em C#
using (Converter converter = new Converter("path/document.pdf"))
{
    ImageConvertOptions options = new ImageConvertOptions
    {
        Format = ImageFileType.Png,
        Grayscale = true
    };
    converter.Convert("path/grayscaleDocument.png", options);
}

Obtenha uma licença de API gratuita

Você pode obter uma licença temporária gratuita para usar a API sem as limitações de avaliação.

Conclusão

Para concluir, aprendemos como documentos PDF podem ser convertidos em formatos de imagens JPG ou PNG em C#. Para criar seu próprio aplicativo de conversão, você pode aprender mais sobre as APIs .NET de Automação de Conversão de código baixo e código alto na documentação.

A melhor forma é experimentar os exemplos que estão disponíveis no GitHub. Contacte-nos para qualquer consulta através do fórum.

Veja também