alexishuf / pdfa-gs-converter

Zero-config conversion of PDF files into PDF/A-1b files using GhosScript
4 stars 1 forks source link

Rodando o script no windows #2

Open xR2 opened 1 year ago

xR2 commented 1 year ago

Fiz uma pequena modificação para rodar o script no windows (10) pois o arquivo executável tem outro nome (gswin64c.exe), embora ainda esteja retornando um erro:

gzip: stdin: not in gzip format tar: Child returned status 1 tar: Error is not recoverable: exiting now sed: can't read PDFA_bu.ps: No such file or directory Failed to replace title . Do it manually or remove backward slashes from PDF metadata

Tentei jogar os dois arquivos para o mesmo diretório, sem sucesso.

Na linha 58. (não sei usar esse negocio de git pull)

if [ $(uname -r | sed -n 's/.*\( *Microsoft *\).*/\1/ip') ];
then
        gswin64c.exe -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 \
   -dPDFA=1 \
   -dPDFACompatibilityPolicy=1 \
   -sProcessColorModel=DeviceRGB \
   -sColorConversionStrategy=RGB \
   -sOutputFile="$OUTPUT" \
   ./PDFA_bu.ps \
   "$INPUT"
if [ "$?" != "0" ]; then
  echo "gs failed to convert $INPUT into $OUTPUT"
  exit 1
fi
else
        gs -dNOPAUSE -dBATCH -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 \
   -dPDFA=1 \
   -dPDFACompatibilityPolicy=1 \
   -sProcessColorModel=DeviceRGB \
   -sColorConversionStrategy=RGB \
   -sOutputFile="$OUTPUT" \
   ./PDFA_bu.ps \
   "$INPUT"
if [ "$?" != "0" ]; then
  echo "gs failed to convert $INPUT into $OUTPUT"
  exit 1
fi
fi
alexishuf commented 1 year ago

O script não tem nenhum suporte para windows. Sugiro fortemente que use o WSL , e se seu WSL não tem o comando gs, instale com apt-get install ghostscript.

Seu log indica que o script falhou na linha 39, quando o script se auto-desempacota em um diretório temporário aleatório (por isso baixar o PDFA_bu.ps do github não teve efeito).

Em breve irei fazer um commit para que o script morra imediatamente ao invés de continuar executando em um estado inconsistente. Mas esse commit não vai resolver o seu problema.

Esses utilitários (grep/sed/tar/tail/cut) tem diferenças entre linux, BSDs e MacOS. O script só foi testado com variantes GNU (linux) e Mac OS (poucos usuários). Sou uma besta ignorante em windows moderno, mas pode ser que o seu WSL não seja ubuntu ou que o WSL pegue coisas de um cygwin ou mingw no $PATH. No WSL, verifique essas duas coisas:

Se para algum deles isso não for o caso, use apt-get install sed (ou equivalente), e espero que isso coloque o binário certo à frente do binário invasor no seu $PATH.