Solucionado!
concretamente este script puedes usarlo cuando exportes desde indesign, pues Indesign tras la exportación los eBooks no se ven correctamente.
Ten encuenta:
1º lo he testeado desde el terminal de Mac
2º el ebook cuando lo descomprimes tiene la siguiente roota:
./ePub/OEBPS/css/idGeneratedStyles.css
3º el archivo css original tras exportarlo de indesign se llama:
idGeneratedStyles.css
4º Tu simplemente tendrías que sustituir los nombres de tus stylos por los que pone abajo, por ejemplo:
en lugar de:
if grep -qr L0-R0-I4 $f; then
pondrías:
if grep -qr MI_ESTILO_CSS $f; then
5º en este script se modifica solo el margin-left, margin-right y text-indent, pero tu puedes escoger las propiedades que desees.
6º el script simplemente se encargará de:
- dividir todo tu CSS en archivos,
- eliminar las propiedades margin-left, margin-right y text-indent
- reemplazar el signo } por tus propiedades correctas.
7º Después si lo deseas también puedes eliminar todos los archivos CSS que se han creado y juntarlos todos en 1, que se debe llamar idGeneratedStyles.css.
Haciendo esto:
Código BASH:
Ver original############
# Delete the original CSS
rm ./ePub/OEBPS/css/idGeneratedStyles.css;
# merge the css files
cat ./ePub/OEBPS/css/GeneratedStyles* > ./ePub/OEBPS/css/idGeneratedStyles.css;
# If you're using bash (the default shell), the extglob shell option allows you to use an extended pattern matching syntax.
shopt -s extglob
#remove all files except the idGeneratedStyles.css
rm -r ./ePub/OEBPS/css/!(idGeneratedStyles.css)
sudo chown -Rv root ./ePub
chmod -R 777 ./ePub
8º También puedes eliminar lineas concretas de CSS:
Código BASH:
Ver original# DELETE CSS LINES. It´s optional. Delete specific lines creating a temporally file, from your CSS for show the pictures with a right size on devices
for x in ./ePub/OEBPS/css/idGeneratedStyles.css;
do
sed '2257,2258d' <"$x" >"$x.tmp"
mv "$x.tmp" "$x"
done
for x in ./ePub/OEBPS/css/idGeneratedStyles.css;
do
sed '2271,2272d' <"$x" >"$x.tmp"
mv "$x.tmp" "$x"
done
9º
Bueno tras esta descripción aqui, esta el código:
Código BASH:
Ver original#!/bin/bash
#####################################################################################
###START### MODIFY ALL BLEEDING STYLES FOR NICE APPEARANCE ON EPUB AND MOBI #########
#####################################################################################
# Split all the CSS styles from the Adobe Indesign into a separate files
cat ./ePub/OEBPS/css/idGeneratedStyles.css | (
I=0;
echo "">./ePub/OEBPS/css/GeneratedStyles0;
while read line;
do
echo $line >> ./ePub/OEBPS/css/GeneratedStyles$I;
if [ "$line" == '}' ];
then I=$[I+1];
echo "" > ./ePub/OEBPS/css/GeneratedStyles$I;
fi
done;
)
sudo chown -Rv root ./ePub/OEBPS/css/*
chmod -R 777 ./ePub/OEBPS/css/*
for f in `ls ./ePub/OEBPS/css/GeneratedStyles*` ; do
############
if grep -qr L0-R0-I4 $f; then
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's#}#margin-left:0;margin-right:0;text-indent:1em;\}#g;' $f
echo "working on css file $I %";
fi
############
if grep -qr L0-R0-I5 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g' $f
echo "working on css file $f %";
fi;
############
if grep -qr L0-R0-I3 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g;' $f
echo "working on css file $f %";
fi;
############
if grep -qr L0-R0-I5 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g' $f
echo "working on css file $f %";
fi;
############
if grep -qr L6-R0-I-4 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g;' $f
echo "working on css file $f %";
fi;
############
if grep -qr L6-R6-I0 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g' $f
echo "working on css file $f %";
fi;
############
if grep -qr L6-R6-I3 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g;' $f
echo "working on css file $f %";
fi;
############
if grep -qr L14-R4-I-5 $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g;' $f
echo "working on css file $f %";
fi;
############
if grep -qr CHAPTER_eBook_03-Biblio-entry---2-lines-List-1-to-9---EBOOK $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g' $f
echo "working on css file $f %";
fi;
############
if grep -qr CHAPTER_eBook_03-Biblio-entry---subtitle-List-1-to-9---EBOOK $f; then
#delete the bad bleeding
perl -i -ne'/margin-left/ or print' $f;
perl -i -ne'/margin-right/ or print' $f;
perl -i -ne'/text-indent/ or print' $f;
#add the right bledding
perl -pi -w -e 's/}/margin-left:0;margin-right:0;text-indent:1em;\}/g;' $f
echo "working on css file $f %";
fi;
done;
###END### MODIFY ALL BLEEDING STYLES FOR NICE APPEARANCE ON EPUB AND MOBI #########
#####################################################################################