Conversão de livros digitais

O calibre tem um sistema de conversão que é projetado para ser muito fácil de usar. Normalmente, você só adiciona um livro ao calibre, clica em converter e o calibre tentará criar um resultado o mais próximo possível da origem. Contudo, o calibre aceita um número muito grande de formatos de origem e uns não são tão adequados quanto outros para conversão em ebooks. No caso de tais formatos de origem, ou se você quer apenas um controle maior sobre o sistema de conversão, o calibre tem uma gama de opções para ajustar o processo de conversão. Note, contudo, que o sistema de conversão do calibre não é um substituto de um editor de ebooks completo. Para editar ebooks eu recomendo que primeiro se converta para EPUB ou AZW3, usando o calibre e, então, usar a função “Editar Livro” para o ajustá-lo. Você poderá, então, utilizar o ebook já editado e converter o mesmo em outros formatos dentro do calibre.

Esse documento fará referência principalmente às configurações de conversão, da maneira como são encontradas na caixa de diálogo de conversão, mostrada na figura abaixo. Todas essas configurações também estão disponíveis por meio da interface de linha de comando para conversão, esclarecida em generated/pt_BR/ebook-convert. Dentro do calibre, você pode obter ajuda sobre qualquer configuração individual, mantendo seu mouse sobre ela. Uma dica irá aparecer, descrevendo a configuração.

Caixa de conversão de livros digitais

Introdução

A primeira coisa a entender sobre o sistema de conversão é que ele foi projetado como um fluxo. Pode ser esquematizado da seguinte forma:

O processo de conversão

Primeiramente, o formato de entrada é convertido em XHTML pelo plugin de entrada adequado. Então o HTML é transformado. Por fim, o XHTML processado é convertido no formato de saída pelo plugin de saída apropriado. Os resultados da conversão podem variar muito, de acordo com o formado de entrada, alguns são mais bem convertidos do que outros. Uma lista dos melhores formatos de origem para conversão está disponível aqui.

As transformações sobre XHTML de saída são onde todo o trabalho acontece. Há diversas transformações, como a inserção dos metadados do livro como página no início do livro, a criação do Sumário com base nos títulos dos capítulos e o afinamento proporcional do tamanho das fontes. Importante lembrar que todas as transformações no XHTML de saída se devem ao plugin de entrada, e não ao arquivo de entrada propriamente. Assim, para ser convertido de RTF em EPUB, o arquivo é antes convertido internamente em XHTML, que recebe as várias transformações e só então o plugin de saída cria o arquivo EPUB, gerando automaticamente todos os metadados, o Sumário etc.

You can see this process in action by using the debug option Ícone de depuração. Just specify the path to a folder for the debug output. During conversion, calibre will place the XHTML generated by the various stages of the conversion pipeline in different sub-folders. The four sub-folders are:

Etapas do processo de conversão

Pasta

Descrição

ficheiro de origem

Contém o HTML de saída gerado pelo plugin de entrada. Use-o para depurar o plugin de entrada.

analisado

É o resultadado do pré-processamento da saída e conversão em XHTML pelo plugin de entrada. Use-o para depurar a deteção da estrutura.

estrutura

Pós deteção de estrutura, mas antes do achatamento de CSS e conversão de tamanho de fonte. Utilizado para depurar a conversão de tamanhos de fontes e transformação de CSS.

processado

Logo antes de o ebook passar para o plugin de saída. Use-o para depurar o plugin de saída.

If you want to edit the input document a little before having calibre convert it, the best thing to do is edit the files in the input sub-folder, then zip it up, and use the ZIP file as the input format for subsequent conversions. To do this use the Edit meta information dialog to add the ZIP file as a format for the book and then, in the top left corner of the conversion dialog, select ZIP as the input format.

Aqui são tratadas várias transformações que atuam no XHTML intermediário e como controlá-las. Ao final, são apresentadas dicas específicas para cada tipo de formato de entrada/saída.

Aparência

Esse conjunto de opções controla vários aspetos da aparência do ebook convertido.

Tipo de letras

Uma das características mais agradáveis da experiência e-reading, é a capacidade de ajustar facilmente o tamanho das fontes para atender as necessidades individuais e condições de iluminação. calibre tem algoritmos sofisticados para garantir que todos os livros que produz tem um tamanho de fonte consistente, não importa o tamanho de fonte especificado no documento de entrada.

O tamanho básico da fonte de um documento é o tamanho mais comum no referido documento, isto é, o tamanho do volume de texto no documento. Quando você especificar :guilabel:”Base font size”, calibre automaticamente redimensionará todos os tamanhos de fonte no documento proporcionalmente, de modo que o tamanho de fonte mais comum torna-se o tamanho básico de fonte especificado e os outros tamanhos de fonte são redimensionados adequadamente. Ao escolher um tamanho básico de fonte maior, você pode tornar as fontes do documento maior ou vice-versa Quando você define o tamanho básico da fonte, para melhores resultados, você deve também definir o tamanho da fonte chave.

Via de regra, o calibre escolhe automaticamente um tamanho-padrão de fonte adequado para o perfil de saída que você escolheu (leia Configuração de página). No entanto, você pode alterá-lo aqui, caso o padrão não esteja adequado.

A opção :guilabel:”Font size key” permite controlar como tamanho não-básico de fonte é redimensionado. O algoritmo de redimensionamento de fonte trabalha utilizando um tamanho de fonte chave, que é simplesmente uma lista de tamanhos de fonte separados por vírgula. O tamanho da fonte chave diz ao calibre quantos «passos» maior ou menor um determinado tamanho de fonte deve ser comparado com o tamanho básico da fonte. A ideia é deve ter um número limitado de tamanhos de fonte no documento. Por exemplo, um tamanho para o texto do corpo, alguns tamanhos de diferentes níveis de título e alguns super/sub scripts e notas de rodapé. O tamanho da fonte chave permite ao calibre compartamentalizar o tamanho das fontes nos documentos de entrada em «caixotes» separados correspondendo aos diferentes tamanhos de fonte lógicos.

Vamos ilustrar com um exemplo. Suponha que o documento que está a ser convertido foi produzido por alguém com uma visão excelente e tem um tamanho básico de fonte de 8pt. Isso significa que a maior parte do texto no documento está dimensionado para 8pts, os títulos ficam num tamanho um pouco maior (digamos 10 e 12pt) e as notas de rodapé um tamanho de fonte pouco menor (em 6pt). Assim, se usmarmos as seguintes configurações:

Base font size : 12pt
Font size key  : 7, 8, 10, 12, 14, 16, 18, 20

O documento de saída terá um tamanho básico de fonte de 12pt, títulos de 14 e 16pt e notas de rodapé de 8pt. Agora, suponha que queremos que o título de maior tamanho se destaque e as notas de rodapé um pouco maior também. Para conseguir isso, o tamanho de fonte chave deve ser alterado para :

New font size key : 7, 9, 12, 14, 18, 20, 22

O título maior agora será de 18pt, enquanto as notas de rodapé serão de 9pt. Você pode jogar com estas configurações para tentar descobrir qual seria a melhor configuração usando o assistente de redimensionamento, que pode ser acessado clicando no pequeno botão ao lado da definição de :guilabel:”Font size key”

Todo o redimensionamento do tamanho da fonte feita na conversão pode ser desativada aqui, se você quiser preservar o tamanho das fontes do documento de entrada.

Uma configuração relacionada é a Altura da linha, que controla o tamanho vertical das linhas de texto. Por padrão (altura da linha 0), não há manipulação da altura das linhas. Se você especificar um valor diferente, a altura vai ser aplicada a todos os locais que não tiverem seu próprio valor. No entanto, trata-se de um recurso arriscado e deve ser usado com cautela. Para ajustar a altura de linha de uma seção do arquivo de entrada, prefira Extra CSS.

Nessa seção, você ainda pode configurar o calibre para embutir as fontes citadas no livro, o que permite que as fontes operem no dispositivo de leitura, mesmo que não estejam disponíveis nele.

Texto

O texto pode ou não ser justificado. Um texto justificado apresenta mais espaço entre as palavras para uniformizar a margem direita. Nem todos gostam de texto justificado. Normalmente, o Calibre preserva a justificação no documento original. Para alterar o padrão, use a opção Texto justificado nessa seção.

Você pode ainda configurar o calibre para Pontuação inteligente, que substitui aspas, traços e reticências sem formatação pelas alternativas tipográficas corretas. O algoritmo, no entanto, não é perfeito, e o resultado precisa ser revisto. Também está disponível um algorítimo contrário, a Pontuação não inteligente.

Finalmente, existe: guilabel: Codificação de caracteres de entrada. Documentos antigos às vezes não especificam a codificação de caracteres. Quando convertido, isso pode resultar em caracteres não ingleses ou caracteres especiais, como aspas inteligentes, sendo corrompidos. O calibre tenta detectar automaticamente a codificação de caracteres do documento de origem, mas nem sempre é bem-sucedido. Você pode forçá-lo a assumir uma codificação de caracteres específica usando essa configuração. cp1252 é uma codificação comum para documentos produzidos usando o software Windows. Você também deve ler: ref: char-encoding-faq para mais informações sobre problemas de codificação.

Visual

Normalmente, os parágrafos em XHTML são renderizados com uma linha em branco entre eles e sem recuo de texto inicial. O calibre tem algumas opções para controlar isso. : guilabel: Remova o espaçamento entre parágrafos “forçosamente, assegure que todos os parágrafos não tenham espaçamento entre parágrafos. Também define o recuo do texto como 1,5em (pode ser alterado) para marcar o início de cada parágrafo. : guilabel: `Inserir linha em branco faz o oposto, garantindo que exista exatamente uma linha em branco entre cada par de parágrafos. Ambas as opções são muito abrangentes, removendo o espaçamento ou inserindo-o em * todos * parágrafos (tecnicamente e tags). Isso é para que você possa definir a opção e garantir que ela funcione conforme anunciado, independentemente de como o arquivo de entrada esteja confuso. A única exceção é quando o arquivo de entrada usa quebras de linha rígida para implementar o espaçamento entre parágrafos.

Se você deseja remover o espaçamento entre todos os parágrafos, exceto alguns selecionados, não use essas opções. Em vez disso, adicione o seguinte código CSS a: ref: `CSS extra

p, div { margin: 0pt; border: 0pt; text-indent: 1.5em }
.spacious { margin-bottom: 1em; text-indent: 0pt; }

Then, in your source document, mark the paragraphs that need spacing with class=»spacious». If your input document is not in HTML, use the Debug option, described in the Introduction to get HTML (use the input sub-folder).

Outra opção útil é: guilabel: Linearizar tabelas. Alguns documentos mal projetados usam tabelas para controlar o layout do texto na página. Quando convertidos, esses documentos geralmente possuem texto que sai da página e outros artefatos. Esta opção extrai o conteúdo das tabelas e o apresenta de forma linear. Observe que essa opção lineariza * todas * as tabelas, portanto, use-a somente se tiver certeza de que o documento de entrada não usa tabelas para fins legítimos, como apresentar informações tabulares.

Estilizar

A opção: guilabel: CSS extra permite especificar CSS arbitrário que será aplicado a todos os arquivos HTML na entrada. Esse CSS é aplicado com prioridade muito alta e, portanto, deve substituir a maioria dos CSS presentes no próprio ** documento de entrada **. Você pode usar esta configuração para ajustar a apresentação / layout do seu documento. Por exemplo, se você quiser que todos os parágrafos da classe endnote estejam alinhados à direita, basta adicionar:

.endnote { text-align: right }

ou se deseja alterar a indentação de todos os parágrafos:

p { text-indent: 5mm; }

:guilabel:”Extra CSS” é uma opção muito poderosa, mas você precisa enter como funciona o CSS para usar todo seu potencial. Você pode usar a opção de debug pipeline descrita acima para ver como o CSS está presente em seu documento de entrada.

Uma opção mais simples é usar: guilabel: Filtrar informações de estilo. Isso permite remover todas as propriedades CSS dos tipos especificados do documento. Por exemplo, você pode usá-lo para remover todas as cores ou fontes.

Transformar estilos

Esta é a instalação mais poderosa relacionada ao estilo. Você pode usá-lo para definir regras que mudam de estilo com base em várias condições. Por exemplo, você pode usá-lo para alterar todas as cores verdes para azuis ou remover todo o estilo em negrito do texto ou colorir todos os títulos de uma determinada cor, etc.

Transformar HTML

Similar to transform styles, but allows you to make changes to the HTML content of the book. You can replace one tag with another, add classes or other attributes to tags based on their content, etc.

Configuração de página

As opções: guilabel: Page setup são para controlar o layout da tela, como margens e tamanhos de tela. Existem opções para configurar as margens da página, que serão usadas pelo plug-in de saída, se o formato de saída selecionado suportar as margens da página. Além disso, você deve escolher um perfil de entrada e um perfil de saída. Ambos os conjuntos de perfis lidam basicamente com como interpretar medições nos documentos de entrada / saída, tamanhos de tela e teclas de redimensionamento de fonte padrão.

If you know that the file you are converting was intended to be used on a particular device/software platform, choose the corresponding input profile, otherwise just choose the default input profile. If you know the files you are producing are meant for a particular device type, choose the corresponding output profile. Otherwise, choose one of the Generic output profiles. If you are converting to MOBI or AZW3 then you will almost always want to choose one of the Kindle output profiles. Otherwise, your best bet for modern E-book reading devices is to choose the Generic e-ink HD output profile.

O perfil de saída também controla o tamanho da tela. Isso fará com que, por exemplo, as imagens sejam redimensionadas automaticamente para caberem na tela em alguns formatos de saída. Portanto, escolha o perfil de um dispositivo com tamanho de tela semelhante ao seu.

Processamento heurístico

O processamento heurístico fornece uma variedade de funções que podem ser usadas para tentar detectar e corrigir problemas comuns em documentos de entrada mal formatados. Use essas funções se o documento de entrada sofrer uma formatação ruim. Como essas funções dependem de padrões comuns, saiba que, em alguns casos, uma opção pode levar a piores resultados, portanto, use com cuidado. Como exemplo, várias dessas opções removerão todas as entidades sem espaço de quebra ou podem incluir correspondências falsas positivas relacionadas à função.

:guilabe:”Habilitar processamento heurístico”

Esta opção ativa o estágio calibre’s: guilabel: Heuristic processing do pipeline de conversão. Isso deve estar ativado para que várias sub-funções sejam aplicadas

:guilabel:”Eliminar quebra de linhas”

A ativação dessa opção fará com que o calibre tente detectar e corrigir quebras de linha rígida existentes em um documento usando pistas de pontuação e comprimento de linha. O calibre primeiro tentará detectar se existem quebras de linha rígida; se elas não parecem existir, o calibre não tentará desembrulhar as linhas. O fator de desembrulhar da linha pode ser reduzido se você quiser “forçar” o calibre a desembrulhar as linhas.

:guilabel:”Fator de eliminação de quebras de linha”

This option controls the algorithm calibre uses to remove hard line breaks. For example, if the value of this option is 0.4, that means calibre will remove hard line breaks from the end of lines whose lengths are less than the length of 40% of all lines in the document. If your document only has a few line breaks which need correction, then this value should be reduced to somewhere between 0.1 and 0.2.

:guilabel:”Detectar e formatar capítulos não formatados e subtítulos”

If your document does not have chapter headings and titles formatted differently from the rest of the text, calibre can use this option to attempt to detect them and surround them with heading tags. <h2> tags are used for chapter headings; <h3> tags are used for any titles that are detected.

Esta função não criará um sumário, mas em muitos casos fará com que as configurações padrão de detecção de capítulo do calibre detectem corretamente capítulos e construam um sumário. Ajuste o XPath em Detecção de estrutura se um sumário não for criado automaticamente. Se não houver outros títulos usados no documento, a configuração «// h: h2» em Detecção de estrutura seria a maneira mais fácil de criar um sumário para o documento.

Os cabeçalhos inseridos não são formatados, para aplicar a formatação, use a opção: guilabel: CSS extra nas configurações de conversão Aparência. Por exemplo, para centralizar tags de cabeçalho, use o seguinte

h2, h3 { text-align: center }
Renumerar sequências de <h1> ou <h2> etiquetas

Alguns editores formatam os cabeçalhos dos capítulos usando várias ou tags sequencialmente. as configurações de conversão padrão do calibre farão com que esses títulos sejam divididos em duas partes. Esta opção renumerará as tags de cabeçalho para evitar a divisão.

:guilabel:”Apagar linhas em branco entre parágrafos”

This option will cause calibre to analyze blank lines included within the document. If every paragraph is interleaved with a blank line, then calibre will remove all those blank paragraphs. Sequences of multiple blank lines will be considered scene breaks and retained as a single paragraph. This option differs from the Remove paragraph spacing option under Look and Feel in that it actually modifies the HTML content, while the other option modifies the document styles. This option can also remove paragraphs which were inserted using calibre’s Insert blank line option.

:guilabel:”Assegura que as quebras de cena estejam formatadas consistentemente”

Com esta opção, o calibre tentará detectar marcadores comuns de quebra de cena e garantir que eles estejam alinhados ao centro. Os marcadores de quebra de cena “suaves”, ou seja, quebras de cena definidas apenas por espaço em branco extra, são estilizados para garantir que eles não sejam exibidos em conjunto com as quebras de página.

:guilabel:”Substituir quebras de cena”

Se esta opção estiver configurada então o Calibre substituirá os marcadores de quebra de cena que encontrar pelo texto de substituição especificado pelo utilizador. Por favor, note que alguns caracteres ornamentais podem não ser suportados em todos os dispositivos de leitura.

Em geral, você deve evitar o uso de tags HTML, o calibre descartará todas as tags e usará a marcação predefinida. tags, ou seja, regras horizontais, e tags são exceções. As regras horizontais podem opcionalmente ser especificadas com estilos; se você optar por adicionar seu próprio estilo, inclua a configuração “width”, caso contrário, as informações de estilo serão descartadas. As tags de imagem podem ser usadas, mas o calibre não fornece a capacidade de adicionar a imagem durante a conversão. Isso deve ser feito após o fato, usando o recurso “Editar livro”.

Exemplo de etiqueta de imagem (coloca a imagem numa pasta “Images” dentro do EPUB após a conversão):

<img style=»width:10%» src=»../Images/scenebreak.png» />

Exemplo de linha horizontal com estilos:

<hr style=»width:20%;padding-top: 1px;border-top: 2px ridge black;border-bottom: 2px groove black;»/>

Remover hífenes desnecessários

calibre vai analisar todo o conteúdo hifenizado no documento quando essa opção for ativada. O documento propriamente dito é utilizado como um dicionário para análise. Isto permite ao calibre remover com precisão hífens de qualquer palavra no documento em qualquer idioma, juntamente com palavras científicas obscuras e inventadas. A principal desvantagem são palavras que aparecem apenas uma única vez n o documento que não será alterado. A análise acontece em dois passos, o primeiro passo analisa finais de linha. Linhas só são descobertas, se a palavra existir com ou sem um hífen no documento. O segundo passo analisa todas as palavras com hífen em todo o documento, hifens são removidos se a palavra existe em outras partes do documento sem uma combinação.

:guilabel:”Colocar em itálico palavras e padrões comuns”

Quando ativado, o calibre procurará palavras e padrões comuns que denotam itálico e itálico. Exemplos são convenções de texto comuns, como ~ palavras ~ ou frases que geralmente devem estar em itálico, por exemplo frases latinas como “etc.” ou “et cetera”.

:guilabel:”Substituir a identação de entidade por CSS”

Alguns documentos usam uma convenção de definição de recuos de texto usando entidades de espaço sem quebra. Quando essa opção está ativada, o calibre tentará detectar esse tipo de formatação e convertê-los em um recuo de texto de 3% usando CSS.

Pesquisar e substituir

Essas opções são úteis principalmente para a conversão de documentos PDF ou conversões de OCR, embora também possam ser usadas para corrigir muitos problemas específicos de documentos. Como exemplo, algumas conversões podem deixar para trás cabeçalhos e rodapés da página no texto. Essas opções usam expressões regulares para tentar detectar cabeçalhos, rodapés ou outro texto arbitrário e removê-los ou substituí-los. Lembre-se de que eles operam no XHTML intermediário produzido pelo pipeline de conversão. Existe um assistente para ajudá-lo a personalizar as expressões regulares do seu documento. Clique na varinha mágica ao lado da caixa de expressão e clique no botão “Teste” depois de compor sua expressão de pesquisa. As partidas bem-sucedidas serão destacadas em amarelo.

A pesquisa funciona usando uma expressão regular do Python. Todo o texto correspondente é simplesmente removido do documento ou substituído usando o padrão de substituição. O padrão de substituição é opcional, se deixado em branco, o texto correspondente ao padrão de pesquisa será excluído do documento. Você pode aprender mais sobre expressões regulares e sua sintaxe em: ref: regexptutorial.

Deteção de estrutura

Detecção de estrutura envolve a tentativa do calibre dar o seu melhor para detectar elementos estruturais no documento de entrada, quando eles não estão devidamente especificados. Por exemplo, capítulos, quebras de página, cabeçalhos, rodapés, etc. Como você pode imaginar, este processo varia muito de livro para livro. Felizmente, o calibre tem opções muito poderosas para controlar isso. Com o poder vem a complexidade, mas se uma vez que você leva um tempo para aprender a complexidade, você bem que vai achar que vale o esforço.

Capítulos e quebras de página

O calibre possui dois conjuntos de opções para: guilabel: detecção de capítulo e: guilabel:` inserção de quebras de página`. Às vezes, isso pode ser um pouco confuso, pois, por padrão, o calibre insere quebras de página antes dos capítulos detectados, bem como os locais detectados pela opção de quebras de página. A razão para isso é que geralmente há um local onde as quebras de página devem ser inseridas que não são limites de capítulos. Além disso, os capítulos detectados podem ser opcionalmente inseridos no Sumário gerado automaticamente.

O calibre usa * XPath *, uma linguagem poderosa para permitir ao usuário especificar limites de capítulos / quebras de página. O XPath pode parecer um pouco assustador de se usar no começo, felizmente, existe: ref: XPath tutorial no Manual do Usuário. Lembre-se de que a detecção de estrutura opera no XHTML intermediário produzido pelo pipeline de conversão. Use a opção de depuração descrita em: ref: conversion-Introduction para descobrir as configurações apropriadas para o seu livro. Há também um botão para um assistente XPath para ajudar na geração de expressões XPath simples.

By default, calibre uses the following expression for detecting chapters:

//*[((name()='h1' or name()='h2') and re:test(., 'chapter|book|section|part\s+', 'i')) or @class = 'chapter']

Essa expressão é bastante complexa, porque tenta lidar com vários casos comuns simultaneamente. O que isso significa é que o calibre assumirá que os capítulos começam com `` ou `` tags com qualquer uma das palavras (capítulo, livro, seção ou parte) nelas ou que tenham o atributo class =» chapter «.

Uma opção relacionada é: guilabel: Marca do capítulo, que permite controlar o calibre quando detecta um capítulo. Por padrão, ele inserirá uma quebra de página antes do capítulo. Você pode inserir uma linha ordenada em vez de ou além da quebra de página. Você também pode fazer com que não faça nada.

A configuração predefinida para deteção de quebras de página é:

//*[name()='h1' or name()='h2']

o que significa que o calibre irá inserir a quebras de página antes de cada tag <h1> e <h2> por padrão.

Nota

As expressões predefinidas podem mudar dependendo do formato de entrada de onde esteja a converter.

Diversos

Existem mais algumas opções nesta secção

:guilabel:”Inserir os metadados como uma página no início do livro”

Uma das grandes vantagens do calibre é que ele permite que você mantenha metadados muito completos sobre todos os seus livros, por exemplo, uma classificação, tags, comentários etc. Essa opção criará uma única página com todos esses metadados e inseri-los em o e-book convertido, normalmente logo após a capa. Pense nisso como uma maneira de criar sua própria capa de livro personalizada.

: guilabel: Remover primeira imagem

Às vezes, o documento de origem que você está convertendo inclui a capa como parte do livro, em vez de como uma capa separada. Se você também especificar uma capa no calibre, o livro convertido terá duas capas. Essa opção simplesmente remove a primeira imagem do documento de origem, garantindo assim que o livro convertido tenha apenas uma capa, a especificada no calibre.

Índice

Quando o documento de entrada tem um índice em seus metadados, o calibre apenas o usa. No entanto, vários formatos mais antigos não suportam um índice baseado em metadados ou documentos individuais não o possuem. Nesses casos, as opções nesta seção podem ajudá-lo a gerar automaticamente um Sumário no e-book convertido, com base no conteúdo real no documento de entrada.

Nota

O uso destas opções pode ser um pouco desafiador para ser exatamente correto. Se preferir criar/editar o índice manualmente, converta para os formatos EPUB ou AZW3 e marque a caixa de seleção na parte inferior da seção Índice na caixa de diálogo de conversão que diz: guilabel: Afinar manualmente o índice de conteúdos após a conversão ». Isso iniciará a ferramenta Editor de índices após a conversão. Ele permite que você crie entradas no Índice simplesmente clicando no local do livro para onde deseja que a entrada aponte. Também pode usar o Editor de índices por si só, sem fazer uma conversão. Ir a : guilabel: `Preferências-> Interface-> Barras e menus e adicione o botão: guilabel: Editar índice` à barra de ferramentas principal. Depois basta selecionar o livro que deseja editar e clicar no botão: guilabel: Editar índice.

A primeira opção é: guilabel: `Força o uso do índice gerado automaticamente “. Ao marcar esta opção, você pode substituir o calibre de qualquer Índice encontrado nos metadados do documento de entrada pelo gerado automaticamente.

A maneira padrão pela qual a criação do Índice gerado automaticamente funciona é que, o calibre tentará primeiro adicionar os capítulos detectados ao índice gerado. Você pode aprender como personalizar a detecção de capítulos na seção: ref: structure-detection acima. Se você não deseja incluir capítulos detectados no índice gerado, marque a opção: guilabel: Não adicione capítulos detectados.

If less than the Chapter threshold number of chapters were detected, calibre will then add any hyperlinks it finds in the input document to the Table of Contents. This often works well: many input documents include a hyperlinked Table of Contents right at the start. The Number of links option can be used to control this behavior. If set to zero, no links are added. If set to a number greater than zero, at most that number of links is added.

calibre will automatically filter duplicates from the generated Table of Contents. However, if there are some additional undesirable entries, you can filter them using the TOC Filter option. This is a regular expression that will match the title of entries in the generated table of contents. Whenever a match is found, it will be removed. For example, to remove all entries titles «Next» or «Previous» use:

Next|Previous

As opções: guilabel: Nível 1,2,3 TOC permitem criar um sofisticado Índice multinível. São expressões XPath que correspondem a tags no XHTML intermediário produzido pelo pipeline de conversão. Veja o: ref: conversion-Introduction para obter acesso a este XHTML. Leia também o: ref: xpath-tutorial, para aprender como construir expressões XPath. Ao lado de cada opção há um botão que inicia um assistente para ajudar na criação de expressões XPath básicas. O exemplo simples a seguir ilustra como usar essas opções.

Supostamente você tem um documento de entrada que resulta em um XHTML parecido com isto:

<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Sample document</title>
    </head>
    <body>
        <h1>Chapter 1</h1>
        ...
        <h2>Section 1.1</h2>
        ...
        <h2>Section 1.2</h2>
        ...
        <h1>Chapter 2</h1>
        ...
        <h2>Section 2.1</h2>
        ...
    </body>
</html>

Depois, definimos as opções como:

Level 1 TOC : //h:h1
Level 2 TOC : //h:h2

Isto resultará num índice automático de dois níveis, que será semelhante a:

Chapter 1
    Section 1.1
    Section 1.2
Chapter 2
    Section 2.1

Aviso

Nem todos os formatos de saída suportam um índice multinível. Você deve primeiro tentar com a saída EPUB. Se isso funcionar, tente o seu formato de escolha.

Usar imagens como títulos de capítulos ao converter documentos de origem em HTML

Suppose you want to use an image as your chapter title, but still want calibre to be able to automatically generate a Table of Contents for you from the chapter titles. Use the following HTML markup to achieve this:

<html>
    <body>
        <h2>Chapter 1</h2>
        <p>chapter 1 text...</p>
        <h2 title="Chapter 2"><img src="chapter2.jpg" /></h2>
        <p>chapter 2 text...</p>
    </body>
</html>

Defina a configuração: guilabel: Nível 1 TOC como` // h: h2`. Então, para o capítulo dois, o calibre assumirá o título do valor do atributo `` title`` na tag `` ``, pois a tag não possui texto.

Usar atributos de etiquetas para fornecer o texto para entradas no índice

Se você possui títulos de capítulo particularmente longos e deseja versões reduzidas no Sumário, pode usar o atributo title para conseguir isso, por exemplo:

<html>
    <body>
        <h2 title="Chapter 1">Chapter 1: Some very long title</h2>
        <p>chapter 1 text...</p>
        <h2 title="Chapter 2">Chapter 2: Some other very long title</h2>
        <p>chapter 2 text...</p>
    </body>
</html>

Defina a configuração: guilabel: Nível 1 TOC como` // h: h2 / @ title`. Em seguida, o calibre assumirá o título do valor do atributo `` title`` nas tags `` , em vez de usar o texto dentro da tag. Observe o `` / @ title à direita na expressão XPath, você pode usar este formulário para dizer ao calibre para obter o texto de qualquer atributo que você desejar.

Modo como as opções são definidas/guardadas para a conversão

Existem dois locais onde as opções de conversão podem ser definidas no calibre. O primeiro está em Preferências-> Conversão. Essas configurações são os padrões para as opções de conversão. Sempre que você tentar converter um novo livro, as configurações definidas aqui serão usadas por padrão.

Você também pode alterar as configurações na caixa de diálogo de conversão para cada conversão de livro. Quando você converte um livro, o calibre lembra as configurações usadas para esse livro, de modo que, se você o converter novamente, as configurações salvas para o livro individual terão precedência sobre os padrões definidos em: guilabel: Preferências. Você pode restaurar as configurações individuais aos padrões usando o botão: guilabel: Restaurar padrões na caixa de diálogo de conversão de livros individual. Você pode remover as configurações salvas de um grupo de livros selecionando todos os livros e clicando no botão: guilabel: Editar metadados para abrir a caixa de diálogo de edição em massa de metadados. Na parte inferior da caixa de diálogo, há uma opção para remover a conversão armazenada. definições.

Quando você converte em massa um conjunto de livros, as configurações são feitas na seguinte ordem (a última vence):

  • Das predefinições configuradas em Preferências->Conversão

  • Nas configurações de conversão salvas para cada livro que está sendo convertido (se houver). Isso pode ser desativado pela opção no canto superior esquerdo da caixa de diálogo de conversão em massa.

  • Das configurações definidas na caixa de diálogo Conversão em lote

Observe que as configurações finais de cada livro em uma conversão em massa serão salvas e reutilizadas se o livro for convertido novamente. Como a prioridade mais alta na conversão em massa é dada às configurações na caixa de diálogo Conversão em massa, elas substituem as configurações específicas de cada livro. Portanto, você deve converter em massa apenas livros que precisam de configurações semelhantes. As exceções são metadados e configurações específicas do formato de entrada. Como a caixa de diálogo de conversão em massa não possui configurações para essas duas categorias, elas serão retiradas das configurações específicas do livro (se houver) ou dos padrões.

Nota

Você pode ver as configurações reais usadas durante qualquer conversão clicando no ícone rotativo no canto inferior direito e clicando duas vezes no trabalho de conversão individual. Isso exibirá um log de conversão que conterá as configurações reais usadas, na parte superior.

Dicas específicas do formato

Aqui você encontrará dicas específicas para a conversão de formatos específicos. Opções específicas para um formato específico, se entrada ou saída, estão disponíveis na caixa de diálogo de conversão em sua própria seção, por exemplo, TXT input ou` EPUB output`.

Converter documentos de Microsoft Word

O Calibre pode converter automaticamente ficheiros .docx criados pelo Microsoft Word 2007 e mais recentes. Basta adicionar o ficheiro ao Calibre e clicar em converter.

Nota

There is a demo .docx file that demonstrates the capabilities of the calibre conversion engine. Just download it and convert it to EPUB or AZW3 to see what calibre can do.

O Calibre irá ger automaticamente um índice com base nos títulos, se você os marcar com os estilos Título 1, Título 2 etc. no Microsoft Word. Abra o ebook de saída no visualizador de ebooks do Calibre e clique no botão: guilabel: Índice para visualizar o índice gerado.

Ficheiros .doc antigos

Para arquivos .doc mais antigos, é possível salvar o documento como HTML com o Microsoft Word e, em seguida, converter o arquivo HTML resultante com o -*Calibre``. Ao salvar como HTML, use a opção «Salvar como página da Web filtrada», pois isso produzirá HTML limpo e com boa conversão. Observe que o Word produz um HTML muito confuso, convertê-lo pode demorar muito tempo, portanto, seja paciente. Se você tiver uma versão mais recente do Word disponível, poderá salvá-la diretamente como .docx.

Another alternative is to use the free LibreOffice. Open your .doc file in LibreOffice and save it as .docx, which can be directly converted in calibre.

Converter documentos de TXT

Os documentos TXT não têm uma maneira bem definida de especificar a formatação, como negrito, itálico, etc., ou a estrutura do documento, como parágrafos, títulos, seções e assim por diante, mas há uma variedade de convenções comumente usadas. Por padrão, o calibre tenta a detecção automática da formatação e marcação corretas com base nessas convenções.

A origem TXT suporta várias opções para diferenciar como os parágrafos são detetados.

: guilabel: Estilo de parágrafo: Automático

Analisa o arquivo de texto e tenta determinar automaticamente como os parágrafos são definidos. Essa opção geralmente funciona bem, se você obtiver resultados indesejáveis, tente uma das opções manuais

: guilabel: Estilo de parágrafo: Bloco

Assume cada linha em branco como um limite de parágrafo:

This is the first.

This is the
second paragraph.
: guilabel: Estilo de parágrafo: Único

Assume que cada linha é um parágrafo:

This is the first.
This is the second.
This is the third.
: guilabel: Estilo do parágrafo: Imprimir

Supõe que todo parágrafo comece com um recuo (uma guia ou mais de 2 espaços). Os parágrafos terminam quando a próxima linha que começa com um recuo é atingida

  This is the
first.
  This is the second.

  This is the
third.
Paragraph style: Unformatted

Supõe que o documento não tenha formatação, mas usa quebras de linha rígida. A pontuação e o comprimento médio da linha são usados para tentar recriar parágrafos.

: guilabel: Estilo de formatação: Automático

Tenta detectar o tipo de marcação de formatação que está sendo usada. Se nenhuma marcação for usada, a formatação heurística será aplicada.

: guilabel: Estilo de formatação: Heurístico

Analisa o documento em busca de títulos de capítulos comuns, quebras de cena e palavras em itálico e aplica a marcação HTML apropriada durante a conversão.

: guilabel: Estilo de formatação: Markdown

O calibre também suporta a entrada TXT em execução através de um pré-processador de transformação conhecido como Markdown. O Markdown permite que a formatação básica seja adicionada aos documentos TXT, como negrito, itálico, títulos de seção, tabelas, listas, um Sumário etc. Marcando os títulos dos capítulos com um número inicial e definindo a expressão de detecção XPath do capítulo como «// h: h1 «é a maneira mais fácil de obter um índice adequado gerado a partir de um documento TXT. Você pode aprender mais sobre a sintaxe do Markdown em daringfireball <https://daringfireball.net/projects/markdown/syntax> _.

: guilabel: Estilo de formatação: Nenhum

Não aplica qualquer formatação especial ao texto, o documento é convertido para HTML sem alterações adicionais.

Converter documentos de PDF

PDF documents are one of the worst formats to convert from. They are a fixed page size and text placement format. Meaning, it is very difficult to determine where one paragraph ends and another begins. calibre will try to unwrap paragraphs using a configurable, Line un-wrapping factor. This is a scale used to determine the length at which a line should be unwrapped. Valid values are a decimal between 0 and 1. The default is 0.45, just under the median line length. Lower this value to include more text in the unwrapping. Increase to include less. You can adjust this value in the conversion settings under PDF Input.

Also, they often have headers and footers as part of the document that will become included with the text. Use the Search and replace panel to remove headers and footers to mitigate this issue. If the headers and footers are not removed from the text it can throw off the paragraph unwrapping. To learn how to use the header and footer removal options, read Tudo sobre utilização de expressões regulares no Calibre.

Algumas limitações de entradas em PDF:

  • Documentos complexos, com multi-colunas ou os baseados em imagens não são suportados.

  • Extração de imagens vetorizadas e tabelas de dentro do documento também não são suportadas.

  • Alguns PDFs usam glifos especiais para representar ll ou ff ou fi, etc. A conversão destes pode ou não funcionar, dependendo de como eles são representados internamente no PDF.

  • Hiperligações e índices não são suportados

  • PDFs that use embedded non-Unicode fonts to represent non-English characters will result in garbled output for those characters

  • Alguns PDFs são compostos de fotografias da página com texto OCR por trás deles. Nesses casos, o calibre usa o texto OCR, que pode ser muito diferente do que você vê ao exibir o arquivo PDF

  • PDFs usados para exibir texto complexo, como idiomas da direita para a esquerda e tipografia matemática, não serão convertidos corretamente

Reiterar ** PDF é um formato muito, muito ruim ** para ser usado como entrada. Se você precisar absolutamente usar o PDF, esteja preparado para uma saída que varia de decente a inutilizável, dependendo do PDF de entrada.

Coleções de narrativas visuais

Uma coleção de narrativas visuais é um ficheiro .cbc. Um ficheiro .cbc é um ficheiro ZIP que contém outros ficheiros CBZ / CBR. Além disso, o ficheiro .cbc deve conter um ficheiro de texto simples, chamado comics.txt, codificado em UTF-8. O ficheiro comics.txt deve conter uma lista dos ficheiros de narrativas visuais dentro do ficheiro .cbc, no formato filename: title, como mostrado abaixo:

one.cbz:Chapter One
two.cbz:Chapter Two
three.cbz:Chapter Three

O ficheiro .cbc conterá:

comics.txt
one.cbz
two.cbz
three.cbz

O Calibre converterá automaticamente esse ficheiro .cbc num ebook, com um índice apontando para cada entrada presente em comics.txt.

Formatação avançada de EPUB - Demo

Various advanced formatting for EPUB files is demonstrated in this demo file. The file was created from hand coded HTML using calibre and is meant to be used as a template for your own EPUB creation efforts.

The source HTML it was created from is available demo.zip. The settings used to create the EPUB from the ZIP file are:

ebook-convert demo.zip .epub -vv --authors "Kovid Goyal" --language en --level1-toc '//*[@class="title"]' --disable-font-rescaling --page-breaks-before / --no-default-epub-cover

Observe que, como esse arquivo explora o potencial do EPUB, a maior parte da formatação avançada não funciona em leitores menos capazes que o visualizador EPUB integrado do calibre.

Converter ficheiros ODT

O calibre pode converter diretamente arquivos ODT (OpenDocument Text). Você deve usar estilos para formatar seu documento e minimizar o uso da formatação direta. Ao inserir imagens no documento, você precisa ancorá-las ao parágrafo, as imagens ancoradas em uma página acabam na frente da conversão.

To enable automatic detection of chapters, you need to mark them with the built-in styles called Heading 1, Heading 2, …, Heading 6 (Heading 1 equates to the HTML tag <h1>, Heading 2 to <h2>, etc). When you convert in calibre you can enter which style you used into the Detect chapters at box. Example:

  • If you mark Chapters with style Heading 2, you have to set the “Detect chapters at” box to //h:h2

  • For a nested TOC with Sections marked with Heading 2 and the Chapters marked with Heading 3 you need to enter //h:h2|//h:h3. On the Convert - TOC page set the Level 1 TOC box to //h:h2 and the Level 2 TOC box to //h:h3.

As propriedades conhecidas do documento (Título, Palavras-chave, Descrição, Criador) são reconhecidas e o calibre usará a primeira imagem (não pequena, e com boa proporção) como imagem de capa.

Há também um modo avançado de conversão de propriedades, que é ativado ao definir a propriedade personalizada `` opf.metadata`` (tipo “Sim ou Não”) como Sim no seu documento ODT (Arquivo-> Propriedades-> Propriedades Personalizadas). Se essa propriedade for detectada pelo calibre, as seguintes propriedades personalizadas serão reconhecidas (`` opf.authors`` substitui o criador do documento)

opf.titlesort
opf.authors
opf.authorsort
opf.publisher
opf.pubdate
opf.isbn
opf.language
opf.series
opf.seriesindex

Além disso, você pode especificar a imagem a ser usada como capa, nomeando-a como `` opf.cover`` (clique com o botão direito do mouse em Imagem-> Opções-> Nome) na ODT. Se nenhuma imagem com esse nome for encontrada, o método “inteligente” será usado. Como a detecção de capa pode resultar em capas duplas em determinados formatos de saída, o processo removerá o parágrafo (somente se o único conteúdo for a capa!) Do documento. Mas isso funciona apenas com a imagem nomeada!

Para desativar a detecção de capa, você pode definir a propriedade personalizada `` of.no cover`` (tipo “Yes or No”) para Yes no modo avançado.

Converter para PDF

The first, most important, setting to decide on when converting to PDF is the page size. By default, calibre uses a page size of «U.S. Letter». You can change this to another standard page size or a completely custom size in the PDF Output section of the conversion dialog. If you are generating a PDF to be used on a specific device, you can turn on the option to use the page size from the output profile instead. So if your output profile is set to Kindle, calibre will create a PDF with page size suitable for viewing on the small Kindle screen.

Cabeçalhos e rodapés

Você pode inserir cabeçalhos e rodapés arbitrários em cada página do PDF especificando modelos de cabeçalho e rodapé. Modelos são apenas trechos de código HTML que são renderizados nos locais de cabeçalho e rodapé. Por exemplo, para exibir os números de página centralizados na parte inferior de cada página, em verde, use o seguinte modelo de rodapé:

<footer><div style="margin: auto; color: green">_PAGENUM_</div></footer>

O calibre substituirá automaticamente: code: _PAGENUM_ pelo número da página atual. Você pode até colocar conteúdo diferente em páginas pares e ímpares, por exemplo, o seguinte modelo de cabeçalho mostrará o título em páginas ímpares e o autor em páginas pares

<header style="justify-content: flex-end">
    <div class="even-page">_AUTHOR_</div>
    <div class="odd-page"><i>_TITLE_</i></div>
</header>

O calibre substituirá automaticamente: code: _TITLE_ e: code:` _AUTHOR_` pelo título e autor do documento que está sendo convertido. A configuração: code: justify-content to: code:` flex-end` fará com que o texto fique alinhado à direita.

Você também pode exibir o texto nas bordas esquerda e direita e alterar o tamanho da fonte, conforme demonstrado neste modelo de cabeçalho:

<header style="justify-content: space-between; font-size: smaller">
    <div>_TITLE_</div>
    <div>_AUTHOR_</div>
</header>

Isto exibirá o título à esquerda e o autor à direita, num tamanho de fonte menor que o texto principal.

Também pode usar a secção atual nos modelos, tal como mostrado abaixo:

<header><div>_SECTION_</div></header>

: code: _SECTION_ é substituído por qualquer que seja o nome da seção atual. Esses nomes são retirados do índice de metadados do documento (o resumo em PDF). Se o documento não tiver um índice, ele será substituído pelo texto vazio. Se uma única página PDF tiver várias seções, a primeira seção da página será usada. Da mesma forma, existe uma variável chamada: code: _TOP_LEVEL_SECTION_ que pode ser usada para obter o nome da seção atual de nível superior.

Você pode até usar JavaScript dentro dos modelos de cabeçalho e rodapé, por exemplo, o modelo a seguir fará com que os números de página sejam iniciados em 4 em vez de 1

<footer>
    <div></div>
    <script>document.currentScript.parentNode.querySelector("div").innerHTML = "" + (_PAGENUM_ + 3)</script>
</footer>

Além disso, existem mais algumas variáveis que é possível usar nos cabeçalhos e rodapés, documentadas abaixo:

  • _TOTAL_PAGES_ - número total de páginas no arquivo PDF, útil para implementar um contador de progresso, por exemplo.

  • _TOP_LEVEL_SECTION_PAGES_ - número total de páginas na secção de nível superior atual

  • _TOP_LEVEL_SECTION_PAGENUM_ - o número da página atual dentro da secção de nível superior atual

Nota

Ao adicionar cabeçalhos e rodapés, defina as margens superior e inferior da página com valores suficientemente grandes, na seção: guilabel: PDF Output da caixa de diálogo de conversão.

Índice imprimível

Você também pode inserir um Índice imprimível no final do PDF que lista os números de página para cada seção. Isso é muito útil se você pretende imprimir o PDF em papel. Se você deseja usar o PDF em um dispositivo eletrônico, o Esboço do PDF fornece essa funcionalidade e é gerado por padrão.

É possível personalizar a aparência do Sumário gerado usando a configuração de conversão CSS extra na parte Aparência da caixa de diálogo de conversão. O CSS padrão usado está listado abaixo, basta copiá-lo e fazer as alterações desejadas.

.calibre-pdf-toc table { width: 100%% }

.calibre-pdf-toc table tr td:last-of-type { text-align: right }

.calibre-pdf-toc .level-0 {
    font-size: larger;
}

.calibre-pdf-toc .level-1 td:first-of-type { padding-left: 1.4em }
.calibre-pdf-toc .level-2 td:first-of-type { padding-left: 2.8em }

Margens de página personalizadas para arquivos HTML individuais

Se você estiver convertendo um arquivo EPUB ou AZW3 com vários arquivos HTML individuais dentro dele e quiser alterar as margens da página para um arquivo HTML específico, é possível adicionar o seguinte bloco de estilo ao arquivo HTML usando o editor de E-book do calibre:

<style>
@page {
    margin-left: 10pt;
    margin-right: 10pt;
    margin-top: 10pt;
    margin-bottom: 10pt;
}
</style>

Em seguida, na seção de saída em PDF da caixa de diálogo de conversão, ative a opção para: guilabel: Use as margens da página do documento que está sendo convertido. Agora todas as páginas geradas a partir deste arquivo HTML terão margens `` 10pt``.