Biblioteca JavaScript gratuita para renderização de documentos EPUB
Biblioteca JavaScript de código aberto para acessar e renderizar documentos EPUB no navegador e em outros dispositivos.
Procurando uma biblioteca simples de usar que possa renderizar documentos EPUB dentro do navegador, bem como em muitos outros dispositivos. Epub.js é uma biblioteca JavaScript de código aberto muito poderosa que permite que programadores e aplicativos acessem e processem documentos EPUB no navegador com facilidade. EPUB é um formato de arquivo EBook muito popular, amplamente usado por editores e consumidores. É compatível com muitos leitores eletrônicos e aplicativos de software em todo o mundo da Internet e pode ser convertido em muitos outros formatos (como PDF, Mobi e iBooks).
O Epub.js é muito útil para lidar com eBooks, pois fornece uma interface para funcionalidades comuns de eBook, como renderização, persistência e paginação, etc. Existem vários métodos de renderização importantes, como o método padrão, que exibe apenas uma única seção por vez. O gerenciador contínuo pode ser usado para mostrar quantas seções forem necessárias para preencher a tela e pré-carregar a próxima seção fora da tela. A seção de substituição de fluxo é baseada nas configurações no OPF, o padrão é paginado.
A biblioteca inclui vários recursos importantes para trabalhar com documentos EPUB, como pesquisar em todo o documento EPUB, pesquisar o capítulo atual, deslizar para virar as páginas, gerar e salvar locais, virar as páginas com as teclas de seta e muito mais.
Introdução ao Epub.js
Epub.js está disponível no npm. Primeiro você precisa instalar o node.js e depois instalar o Epub.js em sua máquina. Por favor, use o seguinte comando para uma instalação suave.
Instalar Epub.js via npm
npm install
Você também pode instalá-lo manualmente; baixe os arquivos de lançamento mais recentes diretamente do repositório GitHub.
Renderize documentos EPUB de várias maneiras via JavaScript
A biblioteca Epub.js de código aberto permite que os programadores de software processem documentos EPUB de várias maneiras dentro de seus próprios aplicativos JavaScript. A biblioteca oferece dois métodos de renderização diferentes, incluindo padrão e contínuo. O método de renderização padrão pode ser usado para exibir uma única seção por vez. Por outro lado, o modo contínuo pode ser usado para exibir várias seções de acordo com a necessidade de preencher a tela e pré-carregar a próxima seção fora da tela.
Renderize documentos EPUB de várias maneiras por meio da biblioteca Java
// Default Rendering
book.renderTo("area", { method: "default", width: "100%", height: "100%" });
// Continuous Rendering
book.renderTo("area", { method: "continuous", width: "100%", height: "100%" });
//Flow Overrides Paginated
book.renderTo("area", { flow: "paginated", width: "900", height: "600" });
//Scrolled:
book.renderTo("area", { flow: "scrolled-doc" });
Aplicar ganchos em documentos EPUB em aplicativos JavaScript
A biblioteca Epub.js incluiu um recurso muito útil semelhante a plugins para interagir e manipular o conteúdo do livro. A biblioteca implementa eventos nos quais você pode ser facilmente fisgado. Por exemplo, os usuários podem carregar vídeos diretamente de links do YouTube antes de implementar a anotação ou exibir o conteúdo de um capítulo. Hooks precisavam de um evento para se registrar e podem retornar uma promessa para bloquear até que eles terminassem.
Como carregar vídeos de links do YouTube via API Java
rendition.hooks.content.register(function(contents, view) {
var elements = contents.document.querySelectorAll('[video]');
var items = Array.prototype.slice.call(elements);
items.forEach(function(item){
// do something with the video item
});
})
Manipulando documentos EPUB via JavaScript
O Epub.js de código aberto fornece funcionalidade completa para criar novos documentos EPUB e manipulá-los com apenas algumas linhas de código JavaScript. Um arquivo com extensão .epub é apenas um arquivo zip contendo um monte de HTML, imagens e metadados sobre o seu eBook. A biblioteca permite especificar CSS e fontes personalizados para estilizar o documento. Ele fornece várias funções importantes para pesquisar o livro inteiro ou pesquisar um capítulo atual, deslizar para virar as páginas, gerar e salvar locais e assim por diante.
Deslize para virar as páginas em documentos EPUB usando a API Java
rendition.on("displayed", event => {
let start = null;
let end = null;
const el = event.document.documentElement;
el.addEventListener('touchstart', event => {
start = event.changedTouches[0];
});
el.addEventListener('touchend', event => {
end = event.changedTouches[0];
let hr = (end.screenX - start.screenX) / el.getBoundingClientRect().width;
let vr = (end.screenY - start.screenY) / el.getBoundingClientRect().height;
if (hr > vr && hr > 0.25) return rendition.prev();
if (hr < vr && hr < -0.25) return rendition.next();
if (vr > hr && vr > 0.25) return;
if (vr < hr && vr < -0.25) return;
});
});