Je publie des livres techniques, en version imprimée, PDF et Kindle/MOBI, avec EPUB en cours de route.Conversion de fichiers ASCII source en fichiers JPEG
Le Kindle ne prend pas en charge les polices monospace, qui sont plutôt utiles pour les listes de codes sources. La seule façon de faire des polices monospace est de convertir le texte (source Java, HTML, XML, etc.) en images JPEG. Plus précisément, en raison de problèmes de pagination, un fichier ASCII d'entrée donné doit être divisé en tranches de ~ 6 lignes chacune, chaque tranche étant transformée en JPEG, de sorte que les listes peuvent couvrir un écran. C'est une douleur royale.
Mon mécanisme actuel de le faire consiste à:
- Exécution
expand
pour définir une constante taille de l'onglet 2-espace, qui tuyaux à ... a2ps
qui pipes à ...- Un petit extrait Perl pour ajouter une ligne
"%%LanguageLevel: 3\n"
, qui ... - ImageMagick's
convert
, pour prendre le (E) PS et en faire un JPEG, avec un arrière-plan approprié, recadrée à575x148+5+28
, etc.
Cela avait l'habitude de fonctionner à 100% du temps. Cela fonctionne maintenant 95% du temps. Le reste du temps, j'obtiens des erreurs convert: geometry does not contain image
, dont je n'arrive pas à me débarrasser, en partie parce que je ne comprends pas quel est le problème. Avant ce processus, j'avais l'habitude d'utiliser un joli moteur d'impression (source-highlight
) pour extraire le HTML du code source ... mais la seule chose que je pouvais trouver pour convertir le HTML en JPEG était d'automatiser grappes d'un moteur Gecko intégré. Fiabilité puant, c'est pourquoi je suis passé à mon mécanisme actuel. Donc, si vous étiez vous, et que vous deviez transformer les listes de sources en images JPEG, de manière automatisée, comment le feriez-vous? Les points bonus s'ils offrent une sorte de processus d'impression (par exemple, des mots-clés en gras)! Ou, si vous savez ce qui provoque généralement convert: geometry does not contain image
, cela pourrait aider. Mon processus actuel est moche, mais si je pouvais revenir à 100% de fiabilité, ce serait très bien pour l'instant.
Merci d'avance!
Cela est prometteur. Je suis à peu près sûr que j'ai déjà emprunté ce chemin avant de l'abandonner, mais j'oublie pourquoi, et mes tests préliminaires suggèrent que ça pourrait marcher. Je vais essayer de le faire demain ou lundi pour confirmer que cette solution fonctionne. Merci! – CommonsWare
Pas de dés. Obtenir la même erreur ImageMagick à peu près à la même fréquence. Doit être une entrée en Postscript. – CommonsWare
En fait, d'autres expériences ont montré que l'erreur se produisait uniquement avec la solution html2ps, lorsque le fichier source contenait des espaces qui entraînaient la création d'une image effectivement vide. Donc, cela fonctionne! Merci beaucoup! – CommonsWare