Módulo Pylatex em Python

| | | | | | | | | | | | | | | | | | | | | | | | | | | | |

O látex chamado "Lay-tech" é um sistema de documentação para documentação de alta qualidade. É usado principalmente para a preparação de trabalhos técnicos ou científicos, mas pode ser usado para quase todas as formas de publicação. O Latex não é um processador de texto como o MS Word ou o LibreOffice Writer. Em vez disso, o Latex incentiva os autores a não se preocuparem com a aparência de seus documentos, mas a se concentrarem em obter o conteúdo certo. Por exemplo, considere o seguinte documento:

Este artigo explica o uso do módulo pylatex Python.Engineering outubro de 2018 

Para criar isso na maioria dos processadores de texto, o autor teria que decidir qual layout a ser usado, então escolheria (digamos) 18pt Helvetica para o título, 12pt Times Roman para o nome e assim por diante. Como resultado, o autor gasta tempo desenvolvendo o documento. O látex é baseado na ideia de que permite que os autores comecem a escrever um documento e deixem para os designers do documento desenvolvê-lo. Portanto, no Latex, você pode inserir o documento acima como:

documentclass {article} itle {Este artigo explica o uso do módulo pylatex} autor {GeeksforGeeks} data {Outubro de 2018} egin {document} maketitle Continue lendo end { document} 

Layout do documento de látex:
Há duas partes principais de um documento de látex:
Preâmbulo:

  • Preâmbulo — esta é a primeira parte do arquivo latex.
  • Ele contém informações detalhadas sobre o documento, como classe do documento, nome do autor, título etc.

Corpo:

  • Seções, tabelas, equações matemáticas, gráficos, etc. podem ser incluídos no corpo de um documento de látex.
  • Todo o conteúdo do documento está dentro de ' /começo {documento} ' e ' /fim {documento} '

Algumas características do látex:

  1. Elaboração de artigos de periódicos, relatórios técnicos, livros técnicos ou não técnicos e slide apresentações.
  2. Isso fornece melhor controle sobre documentos grandes contendo seções, links, tabelas e figuras.
  3. Isso também pode ser útil para preparar documentos contendo fórmulas matemáticas complexas.
  4. A geração de bibliografias e índices é automática no LaTeX.
  5. Também fornece suporte para digitação multilíngue.
  6. Ao documento de látex também podemos adicionar gráficos, ilustrações e cores de processo ou spot.
  7. Fontes PostScript ou metafone também são possíveis em LaTeX.

Exemplo de documento LaTeX:
Exemplo 1: Neste exemplo estamos moldando um látex simples para que do látex usemos o formato de entrada simples que usamos no látex.

documentclass {article } %

usepackage [T1] { fontenc} %

usepackage [utf8] {inputenc} %

usepackage {lmodern } %

usepackage {textcomp} %

usepackage {lastpage} %

usepackage [tmargin = 1cm, lmargin = 10cm] {geometry} %

usepackage {amsm ath} %

usepackage {tikz} %

usepackage {pgfplots} %

pgfplotsset {compat = newest} %

usepackage {graphicx} %

%
%
%

egin {document} %

tamanho normal %

seção {O material normal} %

label {sec: O material regular} %

Algum texto e alguns %

extit {texto em itálico. } %

ewline %

Também alguns símbolos malucos: $ & amp; # { } %

subseção {matemática incorreta} %

label {subsec: Incorrect math} %

[ %

2 * 3 = 22 %

]


%

fim {document}

Saída :

Exemplo 2: Neste exemplo, usamos o rótulo de subseção para formar látex. p>

documentclass {article} %

usepackage [T1] {fontenc} %

usepackage [utf8] {inputenc} %

usepackage {lmodern} %

usepackage {textcomp} %

usepackage {lastpage} %

usepackage [tmargin = 1cm, lmargin = 10cm] {geometry} %

usepackage {amsmath} %

usepackage {tikz} %

usepackage {pgfplots} %

pgfplotsset {compat = newest} %

usepackage {graphicx} %

%
%
%
%

subseção {Tabela} %

label {subsec: Table} %

egin {tabular} {rc | cl} %

hline %

a & amp; b& acampamento; d %

cline { 1 %

- %

2} %

& amp; & & %

e & amp; f& g& 7h %

end {tabular}


%

seção {Recursos especiais} %

label {sec: Recursos especiais} %

subseção {Corrigir equações matriciais} %

label {subsec: Corrigir equações matriciais} %

[ %

egin {pmatrix} %

1 & amp; 4 & amp; 4 %

< classe de código = "simples"> 2 & amp; 3 & 4 %

< classe de código = "simples"> 2 & amp; 2 & amp; 5 %

end {pmatrix} egin {pmatrix} %

800 %

30 %

30 %

end {pmatrix } = egin {pmatrix } %

810 %

60 %

50 %

end {pmatrix} %

]


%

end { document}

Saída: < br>

O que é Pylatex:
PyLaTeX — é uma biblioteca Python para criar e compilar documentos de látex. O objetivo desta biblioteca é ser simples, mas também fornecer uma interface extensível entre Python e latex.

Alguns recursos do pylatex:

  • Podemos acessar todos os recursos do LaTeX em Python usando este módulo
  • Podemos criar documentos com menos linhas de código
  • Como python é uma linguagem de alto nível, é mais fácil escrever código para pylatex em python comparado ao LaTeX
  • No código LaTeX acima, você deve ter visto que, para obter equações, precisamos calcular os valores ‚Äã‚Äã e inseri-los no documento LaTeX, mas com a funcionalidade python adicionada para fazer aritmética é muito mais fácil preparar os documentos

Crie um documento Pylatex:

  • Instale o MikTeX e o módulo pylatex no seu system e importe-o para o código Python.
    Para instalar o MikTeX em seu sistema, siga o link:
    https://miktex.org/download 

    Para instalar o pylatex em um sistema operacional Windows, digite o seguinte comando em t linha de comando:

    python -m pip install pylatex 
  • Cria um documento para importar uma classe de documento do módulo pylatex. Existem diferentes tipos de documentos em latex: artigo, relatório, carta, etc. Para criar um documento do tipo artigo, crie um objeto da classe Document a partir do latex e passe ' artigo '
    doc = Document (documentclass = ’article’) 
  • Para adicionar as alterações necessárias ao documento, como estilo ou formatação, importe as classes necessárias no código python de pylatex. Para adicionar vários utilitários a um documento de látex usando pylatex, é possível da seguinte maneira
    de pylatex import Document, Section, Subsection de pylatex.utils import italic, bold 
  • Para gerar um PDF document, chame o método generate_pdf da classe Document usando um objeto da classe Document e certifique-se de passar o nome do documento pdf em seu argumento dessa maneira.
    doc.generate_pdf ("Demo_article") 

Exemplo Pylatex:
Código 1:


# programa Python gerando
# pequeno documento usando pylatex


import numpy as np


# import from mod ulya pylatex

de pylatex importar Documento, Seção, Subseção, Tabular

de pylatex import Math, TikZ, Axis, Plot, Figure, Matrix, Alignat

from pylatex.utils import itálico

import t os


if __ name__ = = ’__main__’ :

image_filename = os. path.join (os.path.dirname (__ file__), ’kitten.jpg’ )


geometry_options = { "tmargin" : "1cm" , "lmargin" : "10cm" }

doc = Documento (geometry_options = geometry_options)


# crie um PDF intitulado " coisas simples"

com doc.create (Seção ( ’ As coisas simples’ )):

doc.append ( ’ Alguns texto normal e alguns’ )

doc.append (italic ( ’texto em itálico. ’ ))

doc.append ( ’Também alguns caracteres malucos: $ {}’ )

com doc.create (Subsection ( ’Matemática incorreta’ )):

doc.append (Math (dados = [ ’2 * 3’ , ’ = ’ , 9 ]))


# cria subseção pdf

com doc. create (Subseção ( ’Tabela de algo’ )):

com doc.create (Tabular ( ’rc | cl’ )) como tabela:

table.add_hline ()

table.add_row (( 1 , 2 , 3 , 4 ))

table.add_hline ( 1 , 2 )

table.add_empty_row()

table.add_row (( 4 , 5 , 6 , 7 ))


# cria PDF usando .generate_pdf

doc.generate_pdf ( ’full’ , clean_tex = False )

Saída:

Código 2:


import numpy como np


from pylatex Eu estou porta Documento, Seção, Subseção, Tabular

from pylatex importar Matemática, TikZ, Eixo, Gráfico, Figura, Matriz, Alinhar

from pylatex.utils import itálico

import os


if __ name__ = = ’__main__’ :

image_filename = os. path.join (os.path.dirname (__ file__), ’kitten.jpg’ )


geometry_options = { "tmargin" : "1cm" , "lmargin" : "10c m " }

doc = Documento (geometry_options = geometry_options)


# crie uma matriz usando o módulo numpy

a = np.array ([[ 100 , 10 , 20 ]]). T

M = np.matrix ([[ 2 , 3 , 4 ],

[ 0 , 0 , 1 ],

[ 0 , 0 , 2 ]])


# cria um cabeçalho usando fashion

com doc.create (Section ( ’As coisas extravagantes’ )):

com doc.create (Subsection ( ’Corrigir equações de matriz’ )):

doc.append (Math (data = [Matrix (M), Matrix (a), ’=’ , Matriz (M * a)]) )


# cria subseção pdf

com doc.create (Subseção ( ’ Alinhar ambiente matemático’ )):

com doc.create (Alinhar (numeração = False , escape = False )) as agn:

agn.append (r ’frac {a} {b} & amp; = 0 ’ )

agn.extend ([Matriz (M), Matriz (a), ’& amp; =’ , Matrix (M * a)])


com doc.create (Subsection ( ’Belos gráficos’ )):

com doc.create (TikZ()) ):

plot_options = ’ height = 4cm, largura = 6cm, grade = maior’

com doc.create (Axis ( opções = plot_options )) como plot:

plot.append (Plot (name = ’model’ , func = ’-x ^ 5 - 242’ ))

coordenadas = [

( - 4.77778 , 2027.60977 ),

( - 3 .55556 , 347.84069 ),

( - 2.33333 , 22.58953 ),

( - 1.11111 , - 493.50066 ),

( 0.11111 , 46.66082 ),

( 1.33333 , - 205.5628 6 ),

( 2.55556 , - 341.40638 ),

( 3.77778 , - 1169.24780 ),

( 5.00000 , - 3269.56775 ),

]


plot.append (Plot (nome = ’ estimativa’ , coordenadas = coordenadas))


com doc.create (Subseção ( ’Fotos de gatinhos fofos’ )):

com doc.create (Figura (posição = ’h!’ )) como gatinho_pic:

gatinho_pic.add_image (image_filename, largura = ’120px’ )

( 2.55556 , - 341.40638 ),