(PNG) (Portable Network Graphics) e PDF(Portable Document Format) atendem a propósitos distintos no mundo digital. PNG é amplamente usado para imagens de alta qualidade devido à sua compressão sem perdas e suporte à transparência, tornando-o ideal para web design, criação gráfica e conteúdo visual detalhado. Por outro lado, PDF é um formato universal para compartilhamento e arquivamento de documentos, garantindo consistência de layout em todos os dispositivos. Converter PNG em PDF é um processo benéfico para criar compilações, gerar relatórios profissionais
API de conversão de imagem
Aspose.Imaging Cloud é nossa API REST dedicada desenvolvida para facilitar nossos clientes que buscam recursos de processamento e manipulação de imagens na Cloud. Você pode executar operações como redimensionamento de imagem, corte, rotação, dimensionamento, inversão, pesquisa, exportação para outros Formatos de Arquivo Suportados. Agora, conforme este artigo, usaremos Aspose.Imaging Cloud SDK para .NET que é um wrapper em torno do Aspose.Imaging Cloud.
Instalação
O .NET Cloud SDK está disponível para download no NuGet e no GitHub. Execute o seguinte comando no terminal para instalar o SDK via NuGet:
nuget install Aspose.Imaging-Cloud
Caso você precise instalar a partir do Gerenciador de Pacotes NuGet, execute o seguinte comando
PM> Install-Package Aspose.Imaging-Cloud
Instalar no Visual Studio
Outra abordagem é a instalação diretamente no Visual Studio:
- Abra o Solution Explorer.
- Expanda o projeto e clique com o botão direito do mouse na pasta Pacotes dentro da sua solução.
- Selecione a opção Gerenciar pacotes NuGet…
- Clique na aba Navegar e procure por “Aspose.Imaging-Cloud“.
- Clique na caixa de seleção ao lado do pacote Aspose.Imaging-Cloud, selecione a versão apropriada na aba direita e clique no botão Adicionar pacote.
Assinatura na Cloud
O próximo passo é criar uma conta de assinatura gratuita visitando Aspose.Cloud dashboard. Se você tem uma conta GitHub ou Google, basta se inscrever. Caso contrário, clique no botão Create a new Account e forneça as informações necessárias.
Converter PNG para PDF
Para converter uma imagem PNG para o formato PDF, podemos usar uma das duas APIs a seguir para atender a esse requisito:
A API GET espera que você primeiro carregue uma imagem no Cloud Storage e então execute a conversão. Enquanto a segunda API requer que você passe a imagem diretamente no corpo da solicitação e a saída final seja armazenada no Cloud Storage.
Carregar PNG do Cloud Storage
Os passos a seguir definem como podemos primeiro carregar uma imagem no armazenamento em nuvem e então realizar a conversão. Se pularmos a rotina de carregamento de imagem, então também podemos converter qualquer imagem existente no armazenamento em nuvem para o formato PDF com o mesmo snippet de código.
- Primeiro, precisamos criar um objeto ImagingApi enquanto passamos os detalhes do ID do cliente e do segredo do cliente como argumentos.
- Em segundo lugar, carregue a imagem PNG da unidade local e passe-a como argumento para o objeto UploadFileRequest.
- Em terceiro lugar, chame o método UploadFile(…) do ImagingApi para enviar o arquivo para o armazenamento em nuvem (você pode pular esta etapa se a imagem já estiver disponível no armazenamento em nuvem).
- Crie uma instância da classe ConvertImageRequest que recebe o nome da imagem e o formato de saída resultante como argumentos. Os nomes de pasta e armazenamento são opcionais.
- Agora chame o método ConvertImage(…) da classe ImagingApi para iniciar a conversão.
- Por fim, como a resposta contém uma imagem transmitida, podemos salvá-la em uma unidade local usando File.Create an object (o método é mostrado abaixo).
// Obter ClientID de https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// caminho do arquivo PNG de entrada
string imageFile = "poodle.png";
// formato de arquivo de saída
string format = "pdf";
// nome do documento PDF resultante
string resultantFile = "resultant.pdf";
// carregue o arquivo da unidade local
using (var file = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var uploadFileRequest = new UploadFileRequest(imageFile, file);
// Carregar documento original no Cloud Storage
imagingApi.UploadFile(uploadFileRequest);
}
try
{
// Criar ImageRequest
var request = new ConvertImageRequest(imageFile, format, null, null);
// iniciar a operação de conversão
Stream updatedImage = imagingApi.ConvertImage(request);
// imprimir mensagem de sucesso se a conversão for bem-sucedida
if (request != null && request.Equals("OK"))
{
Console.WriteLine("The PNG successfully converted to PDF !");
}
// chame o método para salvar a saída na unidade do sistema
saveToDisk(updatedImage, "/Users/nshahbaz/Desktop/"+resultantFile);
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
// método personalizado para salvar objeto steam como instância de arquivo
public static void saveToDisk(Stream responseStream, String resultantFile)
{
var fileStream = File.Create(resultantFile);
responseStream.Seek(0, SeekOrigin.Begin);
responseStream.CopyTo(fileStream);
fileStream.Close();
}
Carregar PNG da unidade local
Na seção a seguir, usaremos a API CreateConvertedImage para converter uma imagem passada diretamente no corpo da solicitação.
- O primeiro passo é criar um objeto ImagingApi que recebe os detalhes do ID do cliente e do segredo do cliente como argumentos.
- Em segundo lugar, leia a imagem PNG da unidade local usando o objeto File.OpenRead.
- Terceiro, crie um objeto ConvertedImageRequest que receba ImageStream e o formato de saída como argumentos.
- Em seguida, chame o método CreateConvertedImage(…) do ImagingApi para executar a operação de conversão.
- Por fim, salve o PDF resultante usando o objeto File.Create.
// Obter ClientID de https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";
// caminho do arquivo PNG de entrada
string imageFile = "poodle.png";
// formato de arquivo de saída
string format = "pdf";
// nome do documento PDF resultante
string resultantFile = "resultant.pdf";
try
{
using (var imageStream = System.IO.File.OpenRead("/Users/nshahbaz/Desktop/" + imageFile))
{
var request = new CreateConvertedImageRequest(imageStream, format, null, null);
Stream updatedImage = imagingApi.CreateConvertedImage(request);
if (request != null && request.Equals("OK"))
{
Console.WriteLine("PNG successfully converted to PDF !");
}
// Salvar imagem atualizada no armazenamento local
using (var fileStream = File.Create("/Users/nshahbaz/Desktop/" + resultantFile))
{
updatedImage.Seek(0, SeekOrigin.Begin);
updatedImage.CopyTo(fileStream);
}
}
}
catch (Exception ex)
{
Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}
Você pode considerar baixar a entrada poodle.png e o convertido resultant.pdf para fins de teste.
PNG para PDF online usando comandos cURL
Nossas APIs também podem ser acessadas via comandos cURL, então vamos converter PNG para PDF usando comandos cURL. Então, primeiro precisamos gerar um token de acesso JWT com base nos detalhes do Client ID e do Client Secret.
curl -v "https://api.aspose.cloud/connect/token" \
-X POST \
-d "grant_type=client_credentials&client_id=4ccf1790-accc-41e9-8d18-a78dbb2ed1aa&client_secret=caac6e3d4a4724b2feb53f4e460eade3" \
-H "Content-Type: application/x-www-form-urlencoded" \
-H "Accept: application/json"
Depois que o token de acesso for gerado, execute o comando a seguir para converter uma imagem PNG disponível no armazenamento em nuvem para o formato PDF. O PDF de saída é então armazenado em uma unidade local.
curl -X GET "https://api.aspose.cloud/v3.0/imaging/poodle.png/convert?format=pdf" \
-H "accept: application/json" \
-H "authorization: Bearer <JWT Token>" \
-o /Users/nshahbaz/Desktop/myResultant.pdf
Conversor PNG para PDF grátis
Para testemunhar os incríveis recursos da API em nuvem para conversão de imagens PNG em PDF, você pode tentar usar nosso aplicativo Conversor gratuito de PNG para PDF 3D do Acrobat online.
Conclusão
Neste artigo, exploramos os recursos do Aspose.Imaging Cloud para converter PNG para o formato PDF. Também observamos que a conversão pode ser realizada usando o .NET Cloud SDK, bem como o comando cURL. Também fornecemos o Swagger UI para que você possa testar a REST API diretamente no navegador.
Além disso, observe que o Cloud SDK é distribuído sob uma licença MIT e seu código-fonte completo está disponível para download no GitHub. Caso você encontre algum problema ou tenha alguma dúvida ao usar a API, sinta-se à vontade para entrar em contato conosco pelo Fórum de suporte gratuito ao produto.
Artigos relacionados
Recomendamos também que você visite os seguintes links para saber mais sobre: