Skip to content

Permitir forçar o layout de uma tabela específica (single/double-column) por override explícito #1319

Description

@Rossi-Luciano

Descrição da tarefa

Hoje a decisão de layout de tabela (determine_table_layout) é sempre automática, baseada em número de colunas e, após a correção do achado de célula longa, também em tamanho de célula. Não existe forma de um chamador do pipeline forçar o layout de uma tabela específica quando a heurística automática erra, ou quando um periódico tem preferência editorial explícita para aquela tabela.

O padrão equivalente já existe para figura (decide_figure_layout checa figure_data.get('layout') antes de calcular), mas não estava implementado para tabela.

Subtarefas

  • determine_table_layout aceita parâmetro override opcional, que vence a heurística quando for um valor válido (single-column-layout/double-column-layout).
  • extract_table_data aceita override_layout e repassa pra determine_table_layout.
  • extract_body_data aceita table_layout_overrides (dict {table_wrap_id: layout}), busca o override pelo @id de cada tabela e repassa pra extract_table_data.
  • pipeline_docxdata['table_layout_overrides'] e repassa pra extract_body_data.

Considerações e notas

Isso não substitui a heurística automática, só abre um canal opcional pra sobrescrevê-la por tabela específica. É a base de "customização mínima" que puder ser usada tanto por chamadas diretas da API (testes, scripts) quanto, futuramente, por uma config JSON por periódico (Fase 2 da issue #1278), que ainda não existe e não faz parte desta tarefa.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions