import subprocess
from pathlib import Path

# Definir nomes de ficheiros
nome_arquivo = "tabela_maos"
arquivo_tex = Path(f"{nome_arquivo}.tex")
arquivo_pdf = Path(f"{nome_arquivo}.pdf")
arquivo_png = Path(f"{nome_arquivo}.png")

# Conteúdo LaTeX com fonte Poppins e xelatex
conteudo = r"""
\documentclass{article}
\usepackage{fontspec}
\setmainfont{Poppins}
\usepackage{booktabs}
\usepackage{geometry}
\geometry{margin=1cm}
\usepackage{graphicx}
\pagestyle{empty}

\begin{document}

{\normalsize
\begin{tabular}{p{2.5cm} c p{2.5cm} l p{3.5cm} p{4cm}}
    \toprule
    \textbf{Modelo} & \textbf{DoF} & \textbf{Atuação} & \textbf{Sensores} & \textbf{Compatibilidade com manipulador} & \textbf{Software} \\
    \midrule
    HRI Hand & 6 & Motores Lineares & Nenhum & UR3 & ROS \\
    Robot Nano Hand & 11 & Tendões & Câmera & Não mencionado & Não mencionado \\     
    Alaris Hand & 6 & Tendões & Posição & Não & Não mencionado \\     
    LEAP Hand & 16 & Servomotores & Posição & UR5/UR10 & ROS / Python / C++ / simulação \\
    \bottomrule
\end{tabular}
}

\end{document}
"""

# Escrever o ficheiro .tex
with open(arquivo_tex, "w", encoding="utf-8") as f:
    f.write(conteudo)

# Compilar com xelatex
print("A compilar o ficheiro .tex com xelatex...")
subprocess.run(["xelatex", "-interaction=nonstopmode", arquivo_tex.name], check=True)

# Converter PDF para PNG (imagem de alta qualidade)
print("A converter o PDF para PNG...")
subprocess.run([
    "convert", "-density", "300",
    arquivo_pdf.name,
    "-quality", "100",
    arquivo_png.name
], check=True)

print(f"Imagem gerada com sucesso: {arquivo_png.resolve()}")
