Formatação em pdf para kindle

0

Comecei com uma digitalização de um livro que era um PDF de duas colunas, depois usei os métodos gs descritos em este segmento para colocar o PDF em formato de página única, que funcionou muito bem. Isso fica bem na tela do PC, mas quando transfiro o PDF para meu Kindle (3ª geração), a opção fit-to-screen corta cerca de 10-20% da parte inferior da maioria das páginas, enquanto a opção actual size é muito grande para a tela.

Existe uma solução para isso? devo usar parâmetros diferentes de -g4210x5950 quando faço a divisão original com gs ? ou posso apenas redimensionar o PDF (ou suas margens) que eu já criei de tal forma que ele é um bom tamanho para a tela do Kindle? Em caso afirmativo, qual é o tamanho que eu preciso para uma tela de 3ª geração do Kindle.

Eu quero redimensionar o pdf da página única para corrigir o tamanho do Kindle (talvez com gs ), não converter. Como alternativa, adicione margens / bordas, de modo que o ajuste do Kindle na tela funcione sem interromper as extremidades.

(Eu diria que tentei o conversor gratuito da Amazon, etc, mas idealmente eu gostaria de manter o formato PDF em vez de convertê-lo, já que o documento é técnico e a conversão não parece particularmente confiável. Eu prefiro apenas redimensionar o PDF / PDFmargins e mantenha a formatação existente, se possível).

    
por fpghost 23.04.2013 / 15:48

2 respostas

3

Eu tive bons resultados com o K2pdfopt . Com as opções de linha de comando -w (width) e -h (height), você pode definir o tamanho da saída para que corresponda exatamente a o tamanho da tela do seu Kindle.

    
por 23.04.2013 / 17:50
1

Eu encontrei o comando

pdfinfo -box -f 1 -l 3 mypdf.pdf

particularmente útil para encontrar informações sobre um determinado documento PDF. Para o PDF que estava sendo cortado na parte inferior quando colocado no Kindle, as informações mostravam:

Page    1 size: 421 x 595 pts (A5)
Page    1 MediaBox:     0.00     0.00   421.00   595.00
Page    1 CropBox:      0.00     0.00   421.00   595.00
Page    1 BleedBox:     0.00     0.00   421.00   595.00
Page    1 TrimBox:      0.00     0.00   421.00   595.00
Page    1 ArtBox:       0.00     0.00   421.00   595.00
.
.
.

consistente com o modo como o criei usando o comando (que corta as páginas da A5 corretamente)

gs \
  -o left-sections.pdf \
  -sDEVICE=pdfwrite \
  -g4210x5950 \
  -c "<</PageOffset [0 0]>> setpagedevice" \
  -f double-page-input.pdf

O sinalizador -gWxH está definindo o tamanho em pixels em 720dpi .

O tamanho de tela visível do 3rd Gen Kindle é 560x735 (pixels) @ 167dpi (de acordo com este e o wiki), assim, em 72dpi (tela padrão), o tamanho de tela visível do Kindle é convertido em (560/167)*72=241.43 por (735/167)*72=316.88 , portanto, 241.43x316.88 @72dpi . No entanto pdfwrite , usado abaixo, usa um dpi de 720dpi , nesse dpi o visor do Kindle é 2414x3168 @720dpi . Claramente 4210x5950@720dpi é muito grande.

Como alternativa, pode-se ver isso pelo fato de eu ter criado um PDF com 4210x5950 pixels @ 720dpi e a 167dpi isso seria 976.48x1380.07 , que é claramente maior que 560x735 da área visível do Kindle.

Assim, preciso redimensionar para os limites do Kindle.

Pode-se definir o tamanho do dispositivo em pontos diretamente com -dDEVICEWIDTHPOINTS=w e -dDEVICEHEIGHTPOINTS=h . Em 72dpi a 1 point= 1 pixel (como um ponto é definido como 1/72 de uma polegada), mas em 167dpi 1 point ~ 2.31 pixels . Portanto, se nossa exibição for 560x735 pixels @ 167dpi , definiríamos -dDEVICEWIDTHPOINTS=241 -dDEVICEHEIGHTPOINTS=316 para ajustar o Kindle. O problema é que isso não altera os valores de MediaBox etc, que como mostrado por pdfinfo permanecem em 421x595 @72 dpi , então use o sinalizador -dPDFFitPage também para ignorá-los, ou melhor, reescale-os para ajustar o dispositivo. / p>

gs -o out.pdf -sDEVICE=pdfwrite -dDEVICEWIDTHPOINTS=241 -dDEVICEHEIGHTPOINTS=317 -dPDFFitPage -f in.pdf

Parece que agora, quando out.pdf é visualizado usando a opção actual-size no Kindle, ele se ajusta bem na tela.

Ainda não estou totalmente claro por que o Kindle estava cortando as bordas de um PDF que era grande demais para a tela, em vez de apenas redimensionar (mesmo que isso significasse texto muito pequeno) no modo fit-to-screen (acho que o que normalmente faz?).

    
por 24.04.2013 / 09:50