from docx import Document
from docx.shared import Pt, Inches
from docx.enum.text import WD_PARAGRAPH_ALIGNMENT
from docx.oxml import parse_xml
from docx.oxml.ns import nsdecls
# Crear el documento
doc = Document()
doc.sections[0].top_margin = Inches(0.7)
doc.sections[0].bottom_margin = Inches(0.7)
doc.sections[0].left_margin = Inches(1)
doc.sections[0].right_margin = Inches(1)
# TÃtulo principal
title = doc.add_heading("Cuadro Sinóptico: Resultados de Aprendizaje y Contenidos", level=1)
title.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
doc.add_paragraph("") # Espacio
def agregar_cuadro(titulo_resultado, descripcion, lista_contenidos):
table = doc.add_table(rows=1, cols=1)
table.autofit = True
table.style = 'Table Grid'
cell = table.rows[0].cells[0]
shading_elm = parse_xml(r'<w:shd {} w:fill="D9E1F2"/>'.format(nsdecls('w')))
cell._tc.get_or_add_tcPr().append(shading_elm)
p_titulo = cell.add_paragraph()
run_titulo = p_titulo.add_run("🗹 " + titulo_resultado)
run_titulo.bold = True
run_titulo.font.size = Pt(14)
p_titulo.alignment = WD_PARAGRAPH_ALIGNMENT.CENTER
p_desc = cell.add_paragraph()
run_desc = p_desc.add_run(descripcion)
run_desc.italic = True
p_desc.alignment = WD_PARAGRAPH_ALIGNMENT.LEFT
cell.add_paragraph("─" * 50)
p_conten = cell.add_paragraph()
run_cont = p_conten.add_run("â–¶ Contenidos:")
run_cont.bold = True
run_cont.font.size = Pt(12)
for item in lista_contenidos:
p_item = cell.add_paragraph(style='List Bullet')
p_item.add_run(item)
doc.add_paragraph("")
# Datos para el cuadro sinóptico
titulo1 = "Resultado de Aprendizaje 1"
descripcion1 = ("Reconocer los conceptos relacionados con el tema de proyectos y su importancia como mecanismo de innovación, "
"mediante el uso de herramientas que sirven de guÃa en la formulación de proyectos.")
contenidos1 = [
"Definición",
"Fases de un proyecto",
"Intervención de actores / Stakeholders",
"Tipos de proyectos",
"Opciones de grado de la especialización",
"Ciclo de Deming y/o PHVA"
]
titulo2 = "Resultado de Aprendizaje 2"
descripcion2 = ("Desarrollar el estudio de mercado y técnico de un proyecto de inversión privada, "
"para conocer a fondo el entorno y evaluar la viabilidad técnica y operativa.")
contenidos2 = [
"Estudio de mercado",
"Estructura/análisis del mercado",
"Análisis del producto",
"El cliente/consumidor",
"Demanda y oferta",
"Precio",
"Cadena de distribución",
"Estrategias de comercialización",
"Planeación de ventas",
"Materias primas o insumos",
"Estudio técnico del proyecto",
"Localización (microlocalización y macrolocalización)",
"Tamaño del proyecto",
"IngenierÃa del proyecto",
"Organización"
]
titulo3 = "Resultado de Aprendizaje 3"
descripcion3 = ("Desarrollar el plan de inversión de un proyecto usando herramientas pertinentes, "
"para determinar su rentabilidad y los resultados financieros esperados, y orientar la toma de decisiones.")
contenidos3 = [
"Tipos de inversiones (inicial, fijas, diferidas, de trabajo, de capital)",
"Plan de inversión",
"Alternativas de financiamiento (privados, sector público, etc.)",
"Presupuestos, estado de resultados y situación financiera",
"Modelo CANVAS en la formulación de proyectos"
]
agregar_cuadro(titulo1, descripcion1, contenidos1)
agregar_cuadro(titulo2, descripcion2, contenidos2)
agregar_cuadro(titulo3, descripcion3, contenidos3)
doc.save("Cuadro_Sinoptico.docx")