Por que eu tenho caixas pretas em SVGs criados com o inkscape?

2

Quando você cria arquivos SVG com o Inkscape, às vezes acontece que você vê caixas pretas quando as visualiza com outros programas. Eles parecem bem no Inkscape, mas por exemplo meu navegador de arquivos Caja mostra um retângulo preto:

Acho que vi isso com mais frequência quando há campos de texto. E acho que já vi esse problema com bastante frequência na Wikipedia Commons.

    
por Martin Thoma 22.01.2016 / 20:29

3 respostas

3

Veja link para detalhes, mas em resumo:

  • O problema é "texto corrido".
  • Corrija selecionando a caixa de texto e clicando em Text > Convert to Text
por 22.01.2016 / 20:29
1

O problema é que, se você por engano fizer uma caixa de texto vazia, então é difícil deletá-la no inkscape. abrindo o svg com um editor de texto, você pode encontrar o texto como:

    <flowRoot
   style="font-size:16px;font-style:normal;font-weight:normal;line-height:125%;letter-spacing:0px;word-spacing:0px;fill:#000000;fill-opacity:1;stroke:none;font-family:Sans"
   id="flowRoot3304"
   xml:space="preserve"
   transform="translate(74.961781,225.93469)"><flowRegion
     id="flowRegion3306"><rect
       y="73.362183"
       x="-594"
       height="226"
       width="415"
       id="rect3308" /></flowRegion><flowPara
     id="flowPara3310" /></flowRoot>

A exclusão de tudo entre e incluindo <flowRoot e </flowRoot> removerá a caixa preta (e, claro, também o texto que ela pode conter; no exemplo acima, não há texto). backup antes de tentar!

    
por 13.10.2016 / 10:25
0

Existem várias opções para remover flowRoots:

substitua o fluxo de texto não vazio usando (Inkscape)

  • Clique no texto visível do Inkscape ou clique na tag no Editor de XML do Inkscape
  • vá para Text -menu: clique em Convert to Text (você também pode clicar em Desfluxo, mas este às vezes substitui o texto)
  • repita para todos os textos de fluxo (não vazios)
  • save file (Se você salvar como um SVG otimizado, receberá um aviso flowRoot se tiver esquecido um texto)

Existe também um script automático

inkscape filename.svg --verb=EditSelectAll --verb=ObjectFlowtextToText --verb=FileSave --verb=FileClose --verb=FileQuit

Que o quadrado preto não seja processado (Editor de Texto)

adicione fill-opacity="0" no < rect … fill-opacity="0"/> (ou em < path d="…" fill-opacity="0"> ) que está entre < flowRegion> e < /flowRegion>

Outros métodos Se isso não funcionar: mais métodos são explicados em Wikimedia

    
por 28.09.2018 / 23:05

Tags