Files
scripts/doc-converter/scripts/config.py
T

137 lines
4.7 KiB
Python
Executable File

#!/usr/bin/env python3
"""
Configurações para o conversor de guias MD → DOCX → PDF
Autor: Descomplicar® - Agência de Aceleração Digital
"""
import os
from pathlib import Path
# Diretórios base
BASE_DIR = Path(__file__).resolve().parent.parent
GUIAS_DIR = BASE_DIR / "Guias"
CAPAS_DIR = BASE_DIR / "Capas Guias de Marketing"
OUTPUT_DIR = BASE_DIR / "output"
DOCX_OUTPUT_DIR = OUTPUT_DIR / "docx"
PDF_OUTPUT_DIR = OUTPUT_DIR / "pdf"
# Criar diretórios de saída se não existirem
OUTPUT_DIR.mkdir(exist_ok=True)
DOCX_OUTPUT_DIR.mkdir(exist_ok=True)
PDF_OUTPUT_DIR.mkdir(exist_ok=True)
# Configurações do documento
DOCUMENT_CONFIG = {
'page_size': 'A4',
'margins': {
'top': 2.5, # cm
'bottom': 2.5, # cm
'left': 3.0, # cm
'right': 2.5 # cm
},
'font': {
'name': 'Arial',
'size': 11
},
'heading_fonts': {
'Heading 1': {'size': 24, 'bold': True, 'color': '#1a1a1a'},
'Heading 2': {'size': 18, 'bold': True, 'color': '#2a2a2a'},
'Heading 3': {'size': 14, 'bold': True, 'color': '#3a3a3a'},
'Heading 4': {'size': 12, 'bold': True, 'color': '#4a4a4a'}
},
'paragraph_spacing': {
'before': 6, # pt
'after': 6 # pt
},
'line_spacing': 1.15
}
# Configurações de estilo da marca
BRAND_CONFIG = {
'primary_color': '#FF6B35', # Laranja Descomplicar
'secondary_color': '#1E3A8A', # Azul escuro
'text_color': '#333333',
'accent_color': '#00BFA5', # Verde água
'footer_text': 'Descomplicar® - Agência de Aceleração Digital | https://descomplicar.pt',
'header_logo': None # Caminho para logo se disponível
}
# Mapeamento de títulos de guias para nomes de arquivos de capa
# Usa correspondência parcial - se o título do guia contém a chave, usa a capa correspondente
COVER_MAPPING = {
'Marketing Digital': 'Marketing Digital.jpg',
'SEO': 'SEO.jpg',
'Google Ads': 'Google Ads.jpg',
'Facebook Ads': 'Facebook Ads.jpg',
'Instagram para Negócios': 'Instagram para Negócios.jpg',
'LinkedIn para Negócios': 'LinkedIn para Negócios.jpg',
'YouTube para Negócios': 'YouTube para Negócios.jpg',
'TikTok para Negócios': 'TikTok para Negócios.jpg',
'Email Marketing': 'Email Marketing.jpg',
'Marketing de Conteúdo': 'Marketing de Conteúdo.jpg',
'Automação de Marketing': 'Automação de Marketing.jpg',
'E-commerce': 'E-commerce.jpg',
'Copywriting': 'Copywriting para Negócios.jpg',
'Branding': 'Branding.jpg',
'CRM': 'CRM.jpg',
'Análise de Dados': 'Análise de Dados para Negócios.jpg',
'Growth Hacking': 'Growth Hacking.jpg',
'Inbound Marketing': 'Inbound Marketing.jpg',
'Outbound Marketing': 'Outbound Marketing.jpg',
'Performance Marketing': 'Performance Marketing.jpg',
'Social Media': 'Social Media.jpg',
'Gestão de Redes Sociais': 'Gestão de Redes Sociais.jpg',
'Estratégia Digital': 'Estratégia Digital.jpg',
'Landing Pages': 'Landing Pages de Alta Conversão.jpg',
'Google Analytics': 'Google Analytics.jpg',
'Marketing B2B': 'Marketing B2B.jpg',
'Marketing Local': 'Marketing Local.jpg',
'Marketing para Startups': 'Marketing para Startups.jpg',
'Marketing para Pequenas Empresas': 'Marketing para Pequenas Empresas.jpg',
'Marketing para E-commerce': 'Marketing para E-commerce.jpg',
'Storytelling': 'Storytelling para Marcas.jpg',
'Video Marketing': 'Video Marketing (Além do YouTube).jpg',
'Podcasting': 'Podcasting para Marcas e Negócios.jpg',
'KPIs': 'KPIs para Negócios Digitais.jpg',
'Customer Success': 'Customer Success para Negócios Digitais.jpg',
'Vendas Online': 'Vendas Online.jpg',
'Vendas B2B': 'Vendas B2B.jpg',
'Inteligência Artificial': 'Inteligência Artificial para Marketing e Vendas.jpg',
'RGPD': 'RGPD e Privacidade de Dados para Marketers.jpg',
'Grande Dicionário': 'Grande Dicionário de Marketing.jpg'
}
# Caminho para o conteúdo do rodapé
FOOTER_CONTENT_PATH = BASE_DIR / "scripts" / "_conteudo_rodape.md"
# Configurações de processamento
PROCESSING_CONFIG = {
'remove_html_tags': True,
'preserve_links': True,
'convert_schema_markup': False, # Remove schema.org markup
'max_heading_level': 4,
'table_style': 'grid',
'image_max_width': 15, # cm
'enable_toc': True, # Tabela de conteúdos
'toc_depth': 3
}
# Templates de cabeçalho e rodapé
TEMPLATES = {
'header': """
Descomplicar® - Agência de Aceleração Digital
{title}
""",
'footer': """
© {year} Descomplicar® - Todos os direitos reservados
https://descomplicar.pt | info@descomplicar.pt
""",
'cover_page': """
{title}
{description}
Autor: {author}
Data: {date}
"""
}