Render O LaTeX não está funcionando no Inkscape após a instalação para o 18.04

4

Eu instalei recentemente o Ubuntu 18.04 (Não atualizar, uma instalação limpa). No Ubuntu 18.04, a renderização da função LaTeX no Inkscape não está funcionando. A seguir, a saída do erro:

*** WARNING - the DELAYBIND command has been deprecated, and will be

           removed in the next version. For now you can restore

           the behaviour by using -dREALLYDEALYBIND but if you

           require continued use of this command you should contact

           the Ghostscript developers. Commercial customers of

           Artifex should email their support contact, free users

           are encouraged to talk to us on the #ghostscript IRC

           channel on irc.freenode.net.



Unrecoverable error: undefined in DELAYBIND

PostScript/PDF Interpreter finished. Return status 65280 executed command : /usr/bin/gs -q -dDELAYBIND -dWRITESYSTEMDICT -dNODISPLAY -dNOEPS "/tmp/psin5eNNQ0"

The interpreter seems to have failed, cannot proceed !

Traceback (most recent call last):
  File "eqtexsvg.py", line 160, in <module>
    e.affect()
  File "/usr/share/inkscape/extensions/inkex.py", line 283, in affect
    self.effect()
  File "eqtexsvg.py", line 154, in effect
    svg_open(self, svg_file)
  File "eqtexsvg.py", line 81, in svg_open
    doc = inkex.etree.parse(filename)
  File "src/lxml/etree.pyx", line 3426, in lxml.etree.parse
  File "src/lxml/parser.pxi", line 1839, in lxml.etree._parseDocument
  File "src/lxml/parser.pxi", line 1865, in lxml.etree._parseDocumentFromURL
  File "src/lxml/parser.pxi", line 1769, in lxml.etree._parseDocFromFile
  File "src/lxml/parser.pxi", line 1162, in lxml.etree._BaseParser._parseDocFromFile
  File "src/lxml/parser.pxi", line 600, in lxml.etree._ParserContext._handleParseResultDoc
  File "src/lxml/parser.pxi", line 710, in lxml.etree._handleParseResult
  File "src/lxml/parser.pxi", line 639, in lxml.etree._raiseParseError
  File "/tmp/inkscape-Y11679/eq.svg", line 1
lxml.etree.XMLSyntaxError: Document is empty, line 1, column 1

A partir da pesquisa no google, descobri que o problema está surgindo por causa do ghostscript. A extensão Render>LaTeX , na verdade, chama pstoedit , que em chamadas de ghostscript usando DELAYBIND sinalizador para converter de LaTeX para SVG . Mas na versão mais recente de ghostscript , o sinalizador DELAYBIND foi preterido . A solução é fazer downgrade de ghostscript para ou abaixo da versão 9.20. A seguir, os métodos que tentei rebaixar ghostscript sem sucesso algum.

Fazendo downgrade do ghostscript do apt ou aptitute

Eu tentei rebaixar o ghostrict usando o seguinte comando.

sudo aptitude install ghostscript=9.18~dfsg~0-0ubuntu2

Ou usando

sudo apt install ghostscript=9.18~dfsg~0-0ubuntu2

Estou recebendo a seguinte saída

Unable to find a version "9.18~dfsg~0-0ubuntu2" for the package "ghostscript"

ou

E: Version '9.18~dfsg~0-0ubuntu2' for 'ghostscript' was not found

Eu tentei alguma outra versão, como 9,20 de script fantasma. Nada funcionou.

Instalando a partir do site ghostscript:

Eu baixei o ghostscript do ghostscript website e instalei usando o seguinte comando

sudo ./configure
sudo make
sudo make install

Parece que a instalação está feita, mas se eu estou executando o comando

ghostscript  --version

Está mostrando a versão como 9.22.

Toda a solução on-line que eu posso encontrar está apontando para o downgrade do ghostscript . Mas eu não sei como fazer isso no Ubuntu 18.04.

Alguma solução?

    
por Apurba 11.05.2018 / 13:59

4 respostas

3

Supondo que você use o plugin Latex Inkscape, texText , ele suporta pdf2svg ao lado de ghostscript + pstoedit. Então, no caso do Ubuntu 18.04, instalar pdf2svg resolve o problema

sudo apt install pdf2svg

Funciona para mim no Ubuntu 18.04, InkScape 0.92.

    
por bagustris 22.08.2018 / 07:33
2

Neste caso específico, a criação de pstoedit a partir da origem não resolve o problema, porque o backend svg não é incluído por padrão (como já foi visto acima). Por isso, proponho atualizar o ghostscript para a versão 9.23.

Após fazer o download e extrair o tarball de origem ghostscript do link , digite o diretório de origem e execute os três comandos a seguir:

./configure --prefix=/usr
make
sudo make install

Isso simplesmente substitui a versão existente do ghostscript e, em seguida, não é necessário mexer nas dependências.

Se você encontrar problemas em outros lugares devido à nova versão gs, poderá voltar facilmente

sudo apt-get install ghostscript --reinstall

O inconveniente dessa solução é que as atualizações de segurança do ghostscript instaladas pelo sistema sobrescreverão sua instalação e você precisará reinstalá-la. No entanto, desde que não existam binários pré-compilados disponíveis, esta pode ser a primeira alternativa

    
por jcwinkler 13.06.2018 / 13:30
0

Apenas corri para o mesmo problema usando pstoedit para converter arquivos EPS em DXF. Não há necessidade de fazer o downgrade do ghostscript!

Solução mais fácil

  1. Atualizar pstoedit
  2. Execute pstoedit com o sinalizador -rdb .

Passo a passo

  1. Remova o pstoedit do Ubuntu:
    • sudo apt-get remove pstoedit
  2. Faça o download do mais recente pstoedit:
    • Faça o download da versão mais recente do Sourceforge ( link )
    • Extraia para uma pasta de sua escolha
  3. Instale o novo pstoedit:

    • Abra a pasta extraída em um terminal (clique com o botão direito na pasta → abrir no terminal)
    • Executar:

      ./configure
      make
      sudo make install
      
  4. Executar com o sinalizador -rdb:

    • Agora, quando você executar pstoedit, adicione o -rdb flag.
    • Por exemplo: %código%
    • Este sinalizador diz ao pstoedit para usar a nova opção 'force' para fazer o ghostscript aceitar o comando delaybind. As notas da versão avisam que isso deve ser feito apenas em arquivos confiáveis, pois ele pode abrir vulnerabilidades de segurança.
por SRDC 12.05.2018 / 01:11
0

A versão 9.18 está no arquivo xenial (16.04). Se você quiser instalá-lo, você terá que adicionar o repositório xenial ao seu arquivo sources.list :

sudo apt-add-repository "deb http://archive.ubuntu.com/ubuntu/ xenial main restricted universe"

e, em seguida, você poderá ver as versões disponíveis com apt-cache madison ghostscript

ghostscript | 9.18~dfsg~0-0ubuntu2 | http:// archive.ubuntu.com/ubuntu xenial/main amd64 Packages

e instale com sudo apt-get install ghostscript=9.18~dfsg~0-0ubuntu2

    
por jackw11111 14.05.2018 / 04:44