PDF para HTML

Desenvolver conversor de PDF para HTML usando C# .NET

A maioria das pessoas usa o Portable Document Format (PDF) devido ao fato de que a formatação do documento é preservada ao visualizar esses arquivos em qualquer plataforma. A fidelidade do documento não é comprometida quando visualizado em uma plataforma Desktop ou móvel. Mas, para visualizar o arquivo PDF, você precisa usar um aplicativo visualizador específico. Então, para superar essas deficiências, o formato HTML pode ser uma das soluções viáveis. Neste artigo, vamos discutir os detalhes sobre como converter PDF para HTML usando C# .NET.

Neste artigo, discutiremos os seguintes tópicos em detalhes

API de conversão de PDF para HTML

Aspose.PDF Cloud é baseado na arquitetura REST e oferece os recursos para criar, editar e transformar PDF em Formatos de Documentos Suportados incluindo HTML, JPEG, DOCX, PPTX, XLSX, SVG, etc. Neste artigo, nosso foco está nas etapas sobre como converter PDF em HTML usando C# .NET. Esta tarefa pode ser realizada usando Aspose.PDF Cloud SDK para .NET que é um wrapper em torno do Aspose.PDF Cloud para que você obtenha todos os recursos da API REST em seu aplicativo .NET.

O SDK está disponível para download no NuGet e GitHub e para instalá-lo a partir da biblioteca NuGet, execute o seguinte comando no gerenciador de pacotes NuGet:

Install-Package Aspose.Pdf-Cloud

Ou você também pode considerar instalar o SDK diretamente dentro do projeto do Visual Studio como o pacote NuGet. Tudo o que você precisa fazer é expandir a árvore do projeto no Solution Explorer, clicar com o botão direito na pasta Packages e selecionar a opção Manage NuGet Packages… no menu de contexto.

Gerenciar pacotes NuGet.

Imagem 1:- Gerenciar pacotes NuGet.

Agora pesquise Aspose.PDF Cloud no campo de pesquisa, ative a caixa de seleção ao lado do nome do pacote e clique no botão Adicionar pacote.

Aspose.PDF SDK em nuvem

Imagem 2:- Aspose.PDF Cloud SDK em pacotes NuGet.

Observe que Aspose.Pdf-Cloud.dll aparece na pasta Pacotes.

Aspose.Pdf-cloud.dll

Imagem 3:- Aspose.Pdf-cloud.dll no explorador de soluções.

Após a instalação, você precisa fazer login no painel da nuvem usando sua conta GitHub ou Google existente ou clicar no botão Criar uma nova conta.

Converter PDF para HTML - Resultado em resposta

Siga os passos abaixo para executar a operação de conversão de PDF para HTML. O PDF de entrada é carregado do armazenamento em nuvem e o HTML resultante é retornado como um contexto de fluxo de resposta que pode ser salvo em uma unidade local ou exibido diretamente em um navegador da web.

  • O primeiro passo é criar uma variável String definindo os detalhes do ID do cliente e do segredo do cliente.
  • Em segundo lugar, crie uma instância de PdfApi enquanto passa as variáveis Client ID e Client Secret como argumentos.
  • Terceiro, leia o conteúdo do arquivo PDF e carregue-o na instância do Stream.
  • Em seguida, carregue o arquivo PDF no armazenamento em nuvem usando o método UploadFile(…) da classe PdfApi.
  • Por fim, chame o método GetPdfInStorageToHtml(…) para realizar a conversão.
// obter credenciais do cliente em https://dashboard.aspose.cloud/
string clientSecret = "343ebf767f3f53537a45ced31d6be34f";
string clientID = "b1a1b925-cbd0-40c3-b7d5-075c93601243";

// crie uma instância de PdfApi
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// caminho do arquivo PDF de entrada
String inputFile = "/Users/nayyershahbaz/Downloads/Pak 1Q 2021.pdf";

// leia o conteúdo do arquivo PDF na instância Stream
using var fs = new FileStream(inputFile, FileMode.Open, FileAccess.Read);

// nome do arquivo no armazenamento em nuvem
String fileNameinStorage = "MyUploaded.pdf";

try
{
    // carregar PDF para armazenamento em nuvem
    pdfApi.UploadFile(fileNameinStorage, fs);
    
    // executar a conversão do documento
    var response = pdfApi.GetPdfInStorageToHtml(fileNameinStorage, folder: null);
    
    // escreva o resultado no console
    Console.WriteLine(response);
}
catch (Exception ex)
{
    System.Diagnostics.Debug.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
}

PDF para HTML - Resultado em armazenamento em nuvem

Nesta seção, usaremos uma abordagem para converter arquivos PDF para HTML e salvar a saída no armazenamento em nuvem. Siga as etapas fornecidas abaixo para cumprir esse requisito:

  • Primeiro, crie uma instância da classe PdfApi passando os detalhes do ID do cliente e do segredo do cliente como argumentos.
  • Em segundo lugar, leia o arquivo PDF de entrada para a instância do Stream e especifique o nome do arquivo de saída com a extensão .zip.
  • Em terceiro lugar, carregue o arquivo PDF no armazenamento em nuvem usando o método UploadFile(…).
  • Penúltimo, chame o método PutPdfInStorageToHtml(…) que recebe o nome do arquivo PDF de entrada e o nome do arquivo resultante como argumentos.
  • Por fim, imprima o código de resposta no console.
// obter credenciais do cliente em https://dashboard.aspose.cloud/
string clientSecret = "343ebf767f3f53537a45ced31d6be34f";
string clientID = "b1a1b925-cbd0-40c3-b7d5-075c93601243";

// crie uma instância de PdfApi
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// caminho do arquivo PDF de entrada
String inputFile = "/Users/nayyershahbaz/Downloads/Pak 1Q 2021.pdf";

// leia o conteúdo do arquivo PDF na instância Stream
using var fs = new FileStream(inputFile, FileMode.Open, FileAccess.Read);

// nome do arquivo no armazenamento em nuvem
String fileNameinStorage = "MyUploaded.pdf";

// nome do arquivo resultante no armazenamento em nuvem
string resFileName = "result.zip";

// carregue o arquivo no Cloud Storage            
try
{
    // carregue o arquivo para o armazenamento em nuvem
    pdfApi.UploadFile(fileNameinStorage, fs);
    
    // execute a conversão de PDF para HTML e salve o arquivo no armazenamento em nuvem
    var response = pdfApi.PutPdfInStorageToHtml(fileNameinStorage,resFileName, folder: null);
    
    // imprima o código de resposta no console
    Console.WriteLine(response);
}
catch (Exception ex)
{
    System.Diagnostics.Debug.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
 } 

Unidade local PDF para HTML - Saída no armazenamento em nuvem

Nesta seção, discutiremos as etapas sobre como carregar um PDF de uma unidade local, converter o PDF em HTML on-line e salvar a saída no armazenamento em nuvem.

  • O primeiro passo é criar uma instância de PdfApi passando o ID do cliente e o segredo do cliente como argumentos.
  • Em segundo lugar, defina variáveis de string para o PDF de entrada e o .zip resultante para serem armazenados no armazenamento em nuvem.
  • Terceiro, carregue o PDF de entrada na instância do fluxo.
  • Por fim, chame o método PutPdfInRequestToHtml(…) que pega o nome do arquivo resultante e o fluxo que contém o PDF como argumentos. A saída é salva no armazenamento em nuvem.
// obter credenciais do cliente em https://dashboard.aspose.cloud/
string clientSecret = "343ebf767f3f53537a45ced31d6be34f";
string clientID = "b1a1b925-cbd0-40c3-b7d5-075c93601243";

// crie uma instância de PdfApi
PdfApi pdfApi = new PdfApi(clientSecret, clientID);

// caminho do arquivo PDF de entrada
String inputFile = "/Users/nayyershahbaz/Downloads/Pak 1Q 2021.pdf";

// nome do arquivo no armazenamento em nuvem
String resultantFile = "converted.zip";

try
{
    using (Stream stream = System.IO.File.OpenRead(inputFile))
    {
        // iniciar a conversão de PDF para HTML
        var response = pdfApi.PutPdfInRequestToHtml(resultantFile, file: stream);
        
        // imprima o código de resposta (200 em sucesso) no console
        Console.WriteLine(response);
    }   // stream ends here
}
catch (Exception ex)
{
    System.Diagnostics.Debug.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
} 

Conclusão

Neste artigo, discutimos as etapas sobre como converter PDF para HTML em várias abordagens. Conseguimos carregar o arquivo PDF já armazenado no armazenamento em nuvem, bem como carregamos um arquivo da unidade local e o convertemos para o formato HTML. Observe que o Aspose.PDF Cloud SDK para .NET é 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 ao usar a API ou tenha alguma dúvida relacionada, sinta-se à vontade para entrar em contato conosco por meio do Fórum de suporte gratuito ao produto.

Recomendamos também que você visite os seguintes links para saber mais sobre: