Re: [python-brasil] Inserir TXT em um arquivo .odt

235 views
Skip to first unread message

Humberto Diogenes

unread,
May 13, 2010, 4:49:42 PM5/13/10
to python...@yahoogrupos.com.br

Em 13/05/2010, às 17:37, Gustavo Soares escreveu:

> Pessoal,
>
> Procura uma solução onde abrirei um arquivo .odt com uma imagem em plano
> de fundo (marca dágua) e terei que inserir o conteúdo de um arquivo .txt.
>
> Alguem já implementou isso ou tem algum caminho das pedras para tal
> funcionalidade ?

Gustavo,

Com certeza alguém aqui da lista vai te indicar uma biblioteca que faça isso.

De qualquer forma, é interessante você saber o que acontece por trás: o arquivo do OpenOffice é basicamente um .zip com um XML dentro. Ou seja: você pode abrir alguma espécie de "arquivo modelo" (.xml ou .odt), processá-lo e criar um arquivo zip com a extensão .odt que dá certo.

--
Humberto Diógenes
http://humberto.digi.com.br

------------------------------------

,-----------------------------------------------------------.
| Antes de enviar um e-mail para o grupo leia: |
| http://www.pythonbrasil.com.br/moin.cgi/AntesDePerguntar |
| E se você é usuário do BOL lembre-se de cadastrar o |
| e-mail do grupo na lista branca do seu sistema anti-spam. |
`-----------------------------------------------------------´Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/python-brasil/

<*> Para sair deste grupo, envie um e-mail para:
python-brasi...@yahoogrupos.com.br

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
http://br.yahoo.com/info/utos.html


Flávio Ribeiro

unread,
May 13, 2010, 7:39:36 PM5/13/10
to python...@yahoogrupos.com.br
Olá,

Isso aqui pode te ajudar: http://www.linuxjournal.com/article/9319

Valeu,

Flávio Ribeiro
http://twitter.com/flavioribeiro


2010/5/13 Humberto Diogenes <humb...@digi.com.br>

>
>
>
> Em 13/05/2010, às 17:37, Gustavo Soares escreveu:
>
> > Pessoal,
> >
> > Procura uma solução onde abrirei um arquivo .odt com uma imagem em plano
> > de fundo (marca dágua) e terei que inserir o conteúdo de um arquivo .txt.
> >
> > Alguem já implementou isso ou tem algum caminho das pedras para tal
> > funcionalidade ?
>
> Gustavo,
>
> Com certeza alguém aqui da lista vai te indicar uma biblioteca que faça
> isso.
>
> De qualquer forma, é interessante você saber o que acontece por trás: o
> arquivo do OpenOffice é basicamente um .zip com um XML dentro. Ou seja: você
> pode abrir alguma espécie de "arquivo modelo" (.xml ou .odt), processá-lo e
> criar um arquivo zip com a extensão .odt que dá certo.
>
> --
> Humberto Diógenes
> http://humberto.digi.com.br
>
>
>


[As partes desta mensagem que não continham texto foram removidas]

pedro almeida

unread,
May 14, 2010, 2:20:26 PM5/14/10
to python...@yahoogrupos.com.br
como o Humberto disse, um ODT é um  xml zipado!depois de descompactar o arquivo, serão criadas diversas pastas e arquivos!
através do python, vc poderá alterar as imagens, fonte, tudo do arquivo!basicamente, vc trabalhará com o arquivo content.xml, onde fica armazenado o texto, fonte etc. depois que fizer todas alterações, pelo python ou até pelo windows  vc pode enviar todos os arquivos para uma pasta zipada, mudar a extensão de ZIP para odt, que já está pronto.
instruções de como manipular arquivos zip aqui:http://docs.python.org/library/zipfile.html exemplo de arquivo content.xml:
  <?xml
version="1.0" encoding="UTF-8" ?>

- <office:document-content xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:style="urn:oasis:names:tc:opendocument:xmlns:style:1.0" xmlns:text="urn:oasis:names:tc:opendocument:xmlns:text:1.0" xmlns:table="urn:oasis:names:tc:opendocument:xmlns:table:1.0" xmlns:draw="urn:oasis:names:tc:opendocument:xmlns:drawing:1.0" xmlns:fo="urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0" xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" xmlns:number="urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0" xmlns:svg="urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0" xmlns:chart="urn:oasis:names:tc:opendocument:xmlns:chart:1.0" xmlns:dr3d="urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="urn:oasis:names:tc:opendocument:xmlns:form:1.0" xmlns:script="urn:oasis:names:tc:opendocument:xmlns:script:1.0" xmlns:ooo="http://openoffice.org/2004/office" xmlns:ooow="http://openoffice.org/2004/writer" xmlns:oooc="http://openoffice.org/2004/calc" xmlns:dom="http://www.w3.org/2001/xml-events" xmlns:xforms="http://www.w3.org/2002/xforms"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:rpt="http://openoffice.org/2005/report" xmlns:of="urn:oasis:names:tc:opendocument:xmlns:of:1.2" xmlns:rdfa="http://docs.oasis-open.org/opendocument/meta/rdfa#" xmlns:field="urn:openoffice:names:experimental:ooo-ms-interop:xmlns:field:1.0" office:version="1.2">


  <office:scripts />

- <office:font-face-decls>


  <style:font-face style:name="Tahoma1" svg:font-family="Tahoma" />


  <style:font-face style:name="Times New Roman" svg:font-family="'Times New Roman'"
style:font-family-generic="roman" style:font-pitch="variable"
/>

  <style:font-face style:name="Arial" svg:font-family="Arial"
style:font-family-generic="swiss" style:font-pitch="variable"
/>

  <style:font-face style:name="Lucida Sans Unicode" svg:font-family="'Lucida Sans Unicode'" style:font-family-generic="system"
style:font-pitch="variable" />

  <style:font-face style:name="MS Mincho" svg:font-family="'MS Mincho'"
style:font-family-generic="system" style:font-pitch="variable"
/>

  <style:font-face style:name="Tahoma" svg:font-family="Tahoma"
style:font-family-generic="system" style:font-pitch="variable"
/>
  </office:font-face-decls>

  <office:automatic-styles />

- <office:body>


- <office:text>


- <text:sequence-decls>


  <text:sequence-decl text:display-outline-level="0" text:name="Illustration"
/>

  <text:sequence-decl text:display-outline-level="0" text:name="Table" />


  <text:sequence-decl text:display-outline-level="0" text:name="Text" />


  <text:sequence-decl text:display-outline-level="0" text:name="Drawing" />

  </text:sequence-decls>

  <text:p
text:style-name="Standard">SEU TEXTO FICA AQUI.
ESCREVA O QUE QUISER</text:p>
  </office:text>
  </office:body>
  </office:document-content>


--- Em sex, 14/5/10, Flávio Ribeiro <lis...@flavioribeiro.com> escreveu:

Reply all
Reply to author
Forward
0 new messages