JPEG e PNG estão entre os formatos de imagem raster populares e são populares por seus métodos de compactação com perdas. Você tem a opção de ajustar o nível de compactação para atingir o nível de qualidade desejado e, ao mesmo tempo, reduzir o tamanho do armazenamento. No entanto, às vezes seu sistema aceita apenas um formato específico, então você precisa carregar seu conjunto existente de imagens e salvá-las na saída desejada. Em vez de usar aplicativos convencionais com recursos limitados e incorrer no fornecimento manual de arquivos de entrada, as APIs de programação ficam um passo à frente devido à sua flexibilidade e capacidade de realizar todas as operações em formato de lote.
API de processamento de imagem
Aspose.Imaging for .NET é uma API de programação incrível que oferece recursos para criar, manipular e converter formatos de arquivo suportados. Funciona independentemente de outros aplicativos gráficos e não requer a instalação de nenhum editor de imagens na máquina. Ele pode ser usado com aplicativos da Web ASP.NET ou aplicativos de área de trabalho do Windows. Aspose.Imaging for .NET é empacotado dentro do pacote Conholdate.Total for .NET. Então, se você comprou uma assinatura para Conholdate.Total for .NET, então você definitivamente pode realizar todas as operações de processamento de imagem usando a API Aspose.Imaging for .NET.
Para utilizar a API, o primeiro passo é a sua instalação. Você pode seguir qualquer uma das etapas para realizar a instalação.
- Baixe arquivos DLL e faça referência a eles manualmente em seu projeto
- Abra o gerenciador de pacotes NuGet, procure por Aspose.Imaging e instale-o.
- Execute o seguinte comando no console do gerenciador de pacotes NuGet
Install-Package Aspose.Imaging
Converter JPG para PNG em C#
A API é robusta o suficiente para identificar o formato da imagem de entrada e você só precisa especificar a imagem de origem na forma de uma instância do Stream ou fornecendo o caminho para o arquivo no sistema local. Nas etapas a seguir, explicaremos como carregar uma imagem JPEG e salvar a saída no formato PNG.
- Em primeiro lugar, precisamos criar uma instância do objeto Aspose.Imaging.License. Chame o SetLicense(…) e forneça o caminho do arquivo Conholdate.Total.NET.lic como um argumento
- Em segundo lugar, crie um objeto da classe Image que é uma classe base de todos os tipos de imagem, e passe o resultado do método Aspose.Imaging.Image.Load(..) que pega o caminho do Steam ou string de uma imagem arquivo a ser carregado
- Crie uma instância da classe PngOptions
- Finalmente, chame o método Save(String) da classe Image e passe o local onde você deseja salvar o arquivo PNG resultante
// crie um objeto para iniciar a licença
Aspose.Imaging.License license = new Aspose.Imaging.License();
// fornecer o caminho do arquivo de licença
license.SetLicense("/Documents/Conholdate.Total.NET.lic");
// Carregar uma imagem existente (do tipo JPEG) em uma instância da classe Image
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load("/Documents/samsung_galaxy.jpg"))
{
// crie um objeto da classe PngOptions
Aspose.Imaging.ImageOptions.PngOptions options = new Aspose.Imaging.ImageOptions.PngOptions();
// salve a imagem resultante e passe PngOptions como argumento
image.Save(dataDir + "_output.png", options);
}
A classe PngOptions também fornece várias propriedades e no exemplo abaixo, especificamos para gerar o tipo de cor da imagem resultante como Grayscale. Além disso, o nível de compactação para uma imagem resultante é especificado como 4. Observe que a propriedade CompressionLevel aceita valores entre 0-9, onde 9 é a compactação máxima e 0 é o valor padrão.
// criar objeto PngOptions
Aspose.Imaging.ImageOptions.PngOptions options = new Aspose.Imaging.ImageOptions.PngOptions();
// definir o tipo de cor da imagem resultante como grayScale
options.ColorType = Aspose.Imaging.FileFormats.Png.PngColorType.Grayscale;
// defina o nível de compactação para o arquivo resultante como 4
options.CompressionLevel = 4;
O arquivo de origem e a imagem em tons de cinza resultante podem ser baixados nos links a seguir
Conversão de JPG para PDF em C#
Aspose.Imaging para .NET é igualmente capaz de converter imagens JPG para PDF (Portable Document Format). Durante a conversão, você também obtém os recursos para definir DocumentInfo, bem como detalhes de conformidade PDF/A. As etapas a seguir explicam o processo de carregamento de imagens raster e sua conversão para o formato PDF.
- A primeira etapa é criar uma instância da classe License.
- Em segundo lugar, chame o método SetLicense(…) e forneça o caminho do arquivo Conholdate.Total.NET.lic. A licença é inicializada para eliminar todas as restrições presentes na versão de avaliação
- Em terceiro lugar, crie um objeto da classe Image que é uma classe base de todos os tipos de imagem e passe a saída do método Aspose.Imaging.Image.Load(..)
- Agora crie uma instância da classe PdfOptions
- Para definir as informações do documento PDF, como Autor, Título, Assunto, etc, crie um objeto da classe PdfDocumentInfo e passe seu valor para o objeto PdfDocumentInfo da classe PdfOptions
- Agora, para salvar o arquivo PDF com informações de conformidade PDF/A, crie uma instância da classe PdfCoreOptions e associe-a à propriedade PdfCoreOptions do objeto PdfOptions
- Por fim, chame o método Save(String) da classe Image para gerar o documento PDF de saída
// crie um objeto para iniciar a licença
Aspose.Imaging.License license = new Aspose.Imaging.License();
// fornecer o caminho do arquivo de licença
license.SetLicense("/Documents/Conholdate.Total.NET.lic");
// Carregar uma imagem existente (do tipo JPEG ) em uma instância da classe Image
using (Aspose.Imaging.Image image = Aspose.Imaging.Image.Load(dataDir+"samsung_galaxy.jpg"))
{
// crie uma instância da classe PdfOptions
Aspose.Imaging.ImageOptions.PdfOptions pdfOptions = new Aspose.Imaging.ImageOptions.PdfOptions();
// crie o objeto PdfDocumentInfo e passe-o para a instância PdfOptions
pdfOptions.PdfDocumentInfo = new Aspose.Imaging.FileFormats.Pdf.PdfDocumentInfo
{
// defina o nome do autor para o arquivo resultante
Author = "Nayyer Shahbaz",
Title = "JPEG converted to PDF",
Subject = "Aspose.Imaging for .NET"
};
// defina a conformidade com PDF como PDF/A-1a
pdfOptions.PdfCoreOptions = new Aspose.Imaging.FileFormats.Pdf.PdfCoreOptions()
{
PdfCompliance = Aspose.Imaging.PdfComplianceVersion.PdfA1b
};
// salve o documento PDF resultante
image.Save(dataDir + "_output.pdf", pdfOptions);
}
Os arquivos de amostra usados no exemplo acima podem ser baixados nos links a seguir
Obtenha uma licença gratuita
Você pode solicitar uma licença temporária gratuita para experimentar a API sem quaisquer limitações de avaliação.
Conclusão
Neste artigo, discutimos os vários recursos do Aspose.Imaging for .NET especificamente para converter o formato JPG para PNG, bem como sua renderização para o formato PDF. Observe que Aspose.Imaging for .NET é muito mais poderoso e oferece uma infinidade de opções, em comparação com o que foi discutido acima. Ele permite que seus aplicativos .NET desenhem, bem como executem processamento de nível básico a avançado de imagens raster e vetoriais.
Além disso, o Aspose.Imaging for .NET oferece compactação de imagem robusta e alta velocidade de processamento por meio de acesso a byte nativo e uma variedade de algoritmos eficientes. Ele não apenas manipula, exporta e converte imagens, mas também permite desenhar objetos dinamicamente usando manipulação de pixels e caminho gráfico. Para obter mais informações, explore a [documentação] do produto 29 e, caso encontre algum problema ao usar a API, sinta-se à vontade para entrar em contato por meio do fórum de suporte ao produto.