Zip Epub: Le fichier Mimetype ne doit contenir que la chaîne "application / epub + zip"

3

J'ai suivi le didacticiel Créer un livre numérique avec EPUB pour créer un fichier ePUB. Le mimetypefichier contient uniquement application/epub+zip et ne doit pas être compressé. Cependant, les commandes zip recommandées pour obtenir la non-compression du type MIME,

zip -0Xq   ebook.epub mimetype
zip -Xr9Dq ebook.epub *

... produire l'erreur suivante lorsque j'exécute epubcheck :

ERROR: ebook.epub/mimetype: Mimetype file should contain only the string "application/epub+zip".

J'ai donc essayé deux autres combinaisons d'options zip, mais l'erreur reste la même.

zip -X  ebook.epub mimetype 
zip -rg ebook.epub META-INF 
zip -rg ebook.epub OEBPS

zip -X0  ebook.epub mimetype
zip -rX9 ebook.epub * -x mimetype

Cependant, Calibre ouvrira n'importe lequel de ces livres électroniques sans aucun problème.

Le contenu de mon mimetypefichier est correct, il doit donc y avoir un problème avec les zipcommandes. Ou est-ce que cela pourrait être un bug d'epubcheck?

Suzana
la source

Réponses:

2

Vous devez supprimer les caractères \net \rle mimetypefichier à l'aide de la tr commande Linux comme suit:

tr -d '\n' < mimetype   > mimetype.1
tr -d '\r' < mimetype.1 > mimetype.2
rm mimetype mimetype.1 
mv mimetype.2 mimetype

ou simplement

tr -d '\n\r' < mimetype > mimetype.2
mv mimetype.2 mimetype

Et vous devrez ensuite ajouter le fichier type MIME au fichier ePUB en utilisant la commande suivante:

zip -0Xq book.epub mimetype

Ensuite, vous devez ajouter les fichiers restants aux fichiers ePUB comme suit:

zip -Xr9Dq book.epub * -x mimetype -x book.epub 

Ensuite, validez-le simplement à l'aide du validateur EPUB en ligne et vous obtiendrez une erreur sans erreur concernant le type MIME.

ccpplinux
la source
2
Il n'est pas nécessaire de modifier le mimetypefichier. Vous pouvez créer directement sans saut de ligne: echo -n application/epub+zip >mimetype.
Pabouk
Je l'ai essayé avec la commande echo et vos commandes zip et epubcheck n'apportent plus ce message d'erreur. Merci!
Suzana
1

ouvrez le fichier minetype dans Dreamweaver ou n’importe quel logiciel d’édition de texte et supprimez les espaces après la ligne indiquant «application / epub + zip». Assurez-vous qu'il n'y a pas non plus de retours.

Cela devrait fonctionner

toine
la source
1

J'utilise un Mac sous "ePub Zip / Unzip 3.0" (un AppleScript contenant les commandes zip appropriées, etc.) et j'ai aussi cette erreur.

Il s'avère que BBEdit et TextWrangler ont tous deux un paramètre Préférences qui ajoute automatiquement un saut de ligne supplémentaire lorsque vous enregistrez. J'ai décoché cette préférence, et plus d'erreur.

Vérifiez votre éditeur de texte pour voir s'il a une telle préférence et désactivez-le, si vous le pouvez. (Dans BBEdit, cela s'appelle "S'assurer que le fichier se termine par un saut de ligne" sous la préférence "Fichiers texte".)

Meilleur!

Todd

comancheTodd
la source