Splash Screen para Inkscape

1. Splash Screen para Inkscape

jose antonio de siqueira
newjas

(usa Linux Mint)

Enviado em 21/05/2014 - 03:11h

Olá pessoal!
Aqui quem fala e o newjas.
A muito tempo o pessoal reclama que o Inkscape não possui um splash screen(aquela tela inicial que indica que o programa foi aberto). Essa tela é usada principalmente por programas pesados que demoram para abrir e o usuário fica meio sem saber se programa está sendo aberto ou não. Os desenvolvedores insistem em não providenciar um. Após algum tempo esperando o pessoal do desenvolvimento lançar a melhoria eu me lembrei de uma coisa: nós do Linux quando não temos algo, acabamos resolvendo o problema na unha mesmo. Então fui à luta. Não é um splash screen verdadeiro, mas resolve a dificuldade com elegância e eficiência. Trata-se de um programinha em python que lança o programa e a imagem ao mesmo tempo. Serve também para outros programas que não seja o Inkscape. Não sou programador, por isso a solução meio tabajara. Algumas coisas são de minha autoria e outras foram garimpadas na Internet. Depois de montado, o Frankstein ficou uma beleza. Então vamos à solução:

1- Crie na sua pasta do usuário a pasta “.inkscape_SS” sem aspas (o ponto indica que será uma pasta oculta)

2- Abra o gedit, copie e cole o arquivo-programa que vem logo abaixo. Salve como inkscape_SS.py na pasta recém criada. Se tudo deu certo, o texto ficará todo colorido feito bunda de mandril. Vá até a pasta e clique com o botão direito sobre o arquivo, clique em “propriedades” e depois na aba “permissões”, ative a caixa “executar como um programa” e as permissões, deixe todas para “leitura e escrita”.

#!/usr/bin/env python

import Tkinter as tk
from PIL import Image
from os import popen2

popen2('inkscape')

image_name = "/home/newjas/.inkscape_SS/SS2_Inkscape.gif"
image_size = Image.open("/home/newjas/.inkscape_SS/SS2_Inkscape.gif").size

root = tk.Tk()
root.overrideredirect(True)
width = root.winfo_screenwidth()
height = root.winfo_screenheight()
x = (width-image_size[0])/2.
y = (height-image_size[1])/2.

root.geometry('%dx%d+%d+%d' % (image_size[0], image_size[1], x, y))

image = tk.PhotoImage(file=image_name)
canvas = tk.Canvas(root, height=image_size[1], width=image_size[0])
canvas.create_image(0, 0, anchor="nw", image=image)
canvas.pack()

root.after(15000, root.destroy)
root.mainloop()

3- A imagem só pode ser de extensão “*.gif” e quanto ao tamanho pode ser qualquer um, mas o ideal é 600X400 pixels ou perto disso. Nomeie a imagem como “SS2_Inkscape.gif” sem aspas. Dica: uma imagem “*.png” pode ser aberta no gimp e exportada como “*.gif”. Inclusive ela pode ser criada no Inkscape, salva com extensão “*.png” e aberta e exportada como “*.gif” pelo gimp. Não use imagens com degradês pois a extensão “*.gif” costuma estranhar. Use somente cores chapadas. Coloque a imagem na pasta “.inkscape_SS”.

4- Coloque uma imagem de ícone do Inkscape 48X48 pixels ou outro tamanho que lhe apeteça na pasta “.inkscape_SS”.

5- Tudo pronto. Agora é só preparar a decolagem. Clique com o botão direito no botão do menu “iniciar” e em “Configurar”. Isso vai abrir o editor de menus. Nele, desmarque o Inkscape e clique em “New item” . Abrirá uma janelinha e nela digite, nome: Inkscape_SS comando: /home/newjas/.inkscape_SS/inkscape_SS.py comentário: inkscape com Splash Screen. No lado esquerdo tem um quadradinho para a escolha do ícone. Então escolha o que você colocou na pasta “.inkscape_SS”.Feche e pronto. Se quiser colocar um ícone na área de trabalho, faça o seguinte: copie o
arquivo-programa e cole na área de trabalho. Clique com o botão direito sobre o arquivo e depois em “propriedades”, você clica no quadradinho à esquerda e escolha o ícone que está em “.inkscape_SS”.

Finalmente terminamos, mas é bom lembrar que o procedimento foi feito no Mint 16 Petra e é quase certo que funcionará também no Ubuntu, porém em outras distribuições se o Python estiver instalado em pasta diferente, será necessário alguns ajustes. Também acredito ser preciso uma versão recente do Python (2.7 para cima). Verifique se possui os módulos que precisam ser importados(descritos bem no início do programa). Caso não os tenha, baixe-os. Um último alerta:
a linha popen2('inkscape') é a que lança o programa Inkscape. Não caia na tentação de colocar os parâmetros que as vezes aparecem com o programa(tal como inkscape %F). Não funcionará. Se quiser usar com outros programas também pode. É só trocar o nome do aplicativo que está na linha popen2('inkscape') pelo nome que lança o programa que você quer. As linhas:
image_name = "/home/newjas/.inkscape_SS/SS2_Inkscape.gif"
image_size = Image.open("/home/newjas/.inkscape_SS/SS2_Inkscape.gif").size
são referências à imagem que será usada para o splash screen, então, se for usar com outros programas, troque o nome da imagem nessas linhas por outro mais apropriado. Mais uma vez: não use os parâmetros junto com o nome lança o programa. A linha:
root.after(15000, root.destroy)
é a linha que informa o tempo que a imagem será exibida(15000 milissegundos ou 15s). Para alterar esse tempo, mude esse valor.
Para lançar a calculadora, criei a pasta Gcalc copiei o programa para a pasta e modifiquei as linhas citadas:

lança a calculadora: popen2('gnome-calculator')

lança a imagem imageCALC.gif que está na pasta .Gcalc:
image_name = "/home/newjas/.Gcalc/imageCALC.gif"
image_size = Image.open("/home/newjas/.Gcalc/imageCALC.gif").size

informa que a imagem será exibida por 3 segundos: root.after(3000, root.destroy)

Por fim, se tudo der certo gostaria que vocês me ajudassem espalhar esse artigo pela Internet. Quem sabe vendo muita gente usando, os desenvolvedores não cheguem à conclusão que um splash screen não é uma coisa tão profana quanto parece e resolvam fazer um de verdade. Quem domina o inglês poderia por esse artigo em algum site nos States ou nas Englands.

Um abraço e até mais pessoal


newjas








  


2. Re: Splash Screen para Inkscape

Perfil removido
removido

(usa Nenhuma)

Enviado em 21/05/2014 - 03:33h

Muito interessante o conteúdo

solicito que envie para uma dessas áeras, específicas para esse tipo de informação.

Dica: http://www.vivaolinux.com.br/contribuir/dicas/index.php

ou

Artigo: http://www.vivaolinux.com.br/contribuir/artigo/index.php


Além de facilitar a vizualização do conteúdo por parte dos membors do Fórum, facilita também para os mecanismos de busca. E ainda você ganha pontos no Ranking do VOL, por cada contribuição que enviar.

Consulte a tabela de pontuação: http://www.vivaolinux.com.br/tabela.php

agradecemos a contribuição e contamos com a sua compreensão. E esperamos por mais dicas e artigos sobre o Inkscape, e outros assuntos que desejar compartilhar com a comunidade.


3. Re: Splash Screen para Inkscape

Alberto Federman Neto.
albfneto

(usa Sabayon)

Enviado em 21/05/2014 - 06:17h

@NewJas

Publique isso aqui no VOL, como artigo ou dica, vai no fim da página e submeta um artigo ou dica sôbre isso, porque é bem interessante.

se possível, mostre no artigo como uma imagem, essa telas splash funcionando ou abrindo.


4. Re: Splash Screen para Inkscape

jose antonio de siqueira
newjas

(usa Linux Mint)

Enviado em 22/05/2014 - 02:31h

Obrigado tropper e albfneto

Acabei de postar como artigo da maneira que vocês recomendaram. Coloquei também, 2 capturas de tela
conforme sugeriram. Agora é só aguardar.

Abraços pessoal!


5. Re: Splash Screen para Inkscape

Perfil removido
removido

(usa Nenhuma)

Enviado em 22/05/2014 - 07:22h

newjas escreveu:

Obrigado tropper e albfneto

Acabei de postar como artigo da maneira que vocês recomendaram. Coloquei também, 2 capturas de tela
conforme sugeriram. Agora é só aguardar.

Abraços pessoal!


A comunidade agradece. Abraços e sucesso.


6. reparar omissão

jose antonio de siqueira
newjas

(usa Linux Mint)

Enviado em 24/05/2014 - 16:47h

Estou escrevendo este tópico para reparar uma omissão da minha parte. Nos caminhos que apontam para a imagem, aonde
se lê "newjas", coloque o nome do seu usuário.
Abraços
newjas




7. agradecimentos

jose antonio de siqueira
newjas

(usa Linux Mint)

Enviado em 26/05/2014 - 02:33h

Olá pessoal!

Conforme albfneto e tropper sugeriram, mandei o trabalho para submissão na sessão "Artigos" e hoje foi publicado.
Estou muito satisfeito com o resultado e mais uma vez agradeço quem me incentivou e ajudou. Sempre estarei por aqui
visitando os tópicos e assim que tiver alguma novidade volto a postar.

Abraços
newjas