A primeira e principal pergunta em sua mente pode ser: trata-se de converter uma imagem RGB apenas em escala 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 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 escala 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 essa imagem. Por outro lado, uma imagem em tons de cinza torna esse processo relativamente fácil.

API .NET para converter documentos em escala de cinza

GroupDocs.Conversion for .NET é uma API que é usada para conversão de documentos entre vários [formatos de arquivo suportados e tipos de imagem](https:// docs.groupdocs.com/conversion/net/supported-document-formats/). 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 escala de cinza.

Você pode baixar o instalador de DLLs ou MSI na seção de downloads ou instalar a API em seu aplicativo .NET via [NuGet](https ://www.nuget.org/packages/groupdocs.conversion).

PM> Install-Package GroupDocs.Conversion

Se falarmos 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 obter 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 escala de cinza usando C#.

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 de documentos. Você também pode aplicar as marcas d’água com configurações diferentes à imagem de saída.

Converter PDF para 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#.

O código-fonte C# a seguir converte o documento PDF em uma imagem PNG em escala 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 os documentos PDF podem ser convertidos para os 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 alto na documentação.

A melhor maneira é experimentar os exemplos disponíveis no GitHub. Entre em contato conosco para qualquer dúvida através do fórum.

Veja também