MOBI para EPUB

Converter MOBI para EPUB Online

O arquivo MOBI é um arquivo de eBook Mobipocket usado para armazenar livros digitais e é projetado especificamente para dispositivos móveis com baixa largura de banda. Por outro lado, EPUB é amplamente suportado em todas as plataformas, enquanto MOBI é predominantemente um formato Kindle. Além disso, a vantagem mais significativa é que esses e-books são criados em um formato que muda de forma de acordo com o dispositivo em que você os lê. Neste artigo, discutiremos as etapas sobre como converter MOBI para EPUB usando a API REST .NET.

API de conversão de arquivo MOBI

Aspose.Words Cloud foi desenvolvido para facilitar operações como criar, editar, mesclar, dividir, comparar e converter um documento do Word na nuvem. Ele também suporta o recurso para lidar com formatos de e-book, incluindo MOBI e EPUB. O .NET SDK está disponível para download em NuGet e GitHub. Então, para usar o SDK, precisamos executar o seguinte comando para instalá-lo via NuGet.

nuget install Aspose.Words-Cloud

Caso você precise instalar a partir do Gerenciador de Pacotes NuGet, execute o seguinte comando:

PM> Install-Package Aspose.Words-Cloud

O próximo passo importante é criar uma conta de assinatura gratuita visitando Aspose.Cloud dashboard. Use sua conta GitHub ou Google existente ou simplesmente inscreva-se enquanto Criando uma nova conta. Faça login no painel e obtenha as credenciais do cliente.

Converter MOBI para EPUB em C#

Acesse os detalhes a seguir para realizar a conversão do formato MOBI para EPUB usando o snippet de código C# .NET.

  • Crie um objeto de configuração fornecendo detalhes de ID do cliente e segredo do cliente.
  • Em segundo lugar, crie uma instância da classe WordsApi que receba um objeto Configuration como argumento.
  • Em terceiro lugar, inicialize um objeto da classe UploadFileRequest que recebe a instância do fluxo de arquivo MOBI de entrada como argumento.
  • Agora carregue o arquivo de entrada no armazenamento em nuvem usando o método UploadFile(..) do WordsApi.
  • O próximo passo é criar um objeto de GetDocumentWithFormatRequest enquanto fornece um arquivo de entrada, o formato resultante e os nomes dos arquivos resultantes são argumentos.
  • Por fim, chame o método GetDocumentWithFormat(..) para executar a operação de conversão. O arquivo de saída é salvo no armazenamento em nuvem.
// Obter ClientID de https://dashboard.aspose.cloud/
string clientSecret = "caac6e3d4a4724b2feb53f4e460eade3";
string clientID = "4ccf1790-accc-41e9-8d18-a78dbb2ed1aa";

// crie uma instância de Configuração ao fornecer suas credenciais de Cliente
var config = new Configuration{ ClientId = clientID, ClientSecret = clientSecret };

// inicializar instância WordsApi usando argumento de configuração
var wordsApi = new WordsApi(config);

String inputFile = "famouspaintings.mobi";
String resultant = "conveted.epub";
String format = "EPUB";

try
{
    using (var inputStream = new FileStream("/Users/nshahbaz/Downloads/" + inputFile, FileMode.Open))
    {
        // criar instância de solicitação de upload de arquivo
        var uploadFileRequest = new UploadFileRequest(inputStream, inputFile);
        // carregar arquivo MOBI para armazenamento em nuvem
        wordsApi.UploadFile(uploadFileRequest);

        // Crie uma instância DocumentWithFormatRequest usando arquivo de entrada e formato de saída
        // e o nome do arquivo EPUB resultante como argumentos
        var response = new GetDocumentWithFormatRequest(inputFile, format, null, null, null, null, resultant);
        
        // iniciar a operação de conversão do documento
        Stream result = wordsApi.GetDocumentWithFormat(response);
        if (result != null && result.Equals("OK"))
        {
            Console.WriteLine("Successfully converted MOBI to EPUB !");
        }
    }
}
catch (Exception ex)
{
    Console.WriteLine("error:" + ex.Message + "\n" + ex.StackTrace);
} 
Prévia de Mobi para EPUB

Imagem 1:- Visualização da conversão de MOBI para EPUB.

Os arquivos de amostra usados no exemplo acima podem ser baixados de famouspaintings.mobi e converted.epub.

Conversão de MOBI para EPUB usando o comando cURL

Também podemos usar os comandos cURL para acessar a API do Aspose.Words Cloud. Agora, como pré-requisito, precisamos primeiro gerar um JSON Web Token (JWT) com base nos detalhes do ClientID e ClientSecret recuperados do painel do Aspose.Cloud. Execute o seguinte comando no terminal para gerar o token JWT.

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"

Agora que temos o token de acesso JWT, precisamos carregar o arquivo MOBI de entrada para o armazenamento em nuvem usando o comando a seguir. Se o conteúdo for multipart e não fornecermos o nome do arquivo, ele tenta obtê-los do parâmetro filename do cabeçalho Content-Disposition.

curl -X PUT "https://api.aspose.cloud/v4.0/words/storage/file/famouspaintings.mobi" \
-H  "accept: application/json" \
-H  "Authorization: Bearer <JWT Token>" \
-H  "Content-Type: multipart/form-data" \
-d {"fileContent":{}}

Por fim, execute o seguinte comando para converter MOBI em EPUB e salvar o arquivo resultante no armazenamento em nuvem.

curl -X GET "https://api.aspose.cloud/v4.0/words/famouspaintings.mobi?format=EPUB&outPath=conveted.epub" \
-H  "accept: application/octet-stream" \
-H  "Authorization: Bearer <JWT Token>"

Conclusão

Neste blog, exploramos os recursos de conversão de arquivos MOBI kindle para o formato EPUB usando C# .NET. Também aprendemos as etapas para desenvolver um leitor de arquivo MOBI usando comandos cURL. A API também pode ser testada usando a interface swagger.

Observe que todos os nossos Cloud SDKs são distribuídos sob uma licença MIT, portanto, o snippet de código completo para o Aspose.Words Cloud SDK para .NET pode ser baixado do 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: