Vai al contenuto
🛠️ToolsShed

Text Columns

Dividi il tuo testo in più colonne a larghezza uguale per una lettura facile.

Informazioni sullo strumento

Testo in Colonne è uno strumento semplice che divide il tuo testo in più colonne di uguale larghezza, rendendo i passaggi lunghi più facili da leggere e scansionare. Questo stile di layout a colonne, reso popolare da giornali e libri, riduce l'affaticamento degli occhi limitando la larghezza del testo su ogni riga e aiuta i lettori a mantenere la concentrazione mentre si spostano da una colonna all'altra.

Per utilizzare lo strumento, incolla il tuo testo nell'area di input e seleziona il numero di colonne desiderato. Lo strumento distribuisce automaticamente il tuo testo in modo uniforme tra le colonne. Funziona benissimo per articoli, poesia, saggi o qualsiasi testo lungo che desideri formattare per una migliore leggibilità.

Testo in Colonne è particolarmente utile quando prepari contenuti per la pubblicazione, progetti newsletter o semplificamente riformatti documenti lunghi per renderli visivamente più attraenti. Il layout multicolonna funziona bene anche su visualizzazioni desktop e mobili, adattandosi perfettamente a diversi tagli di schermo.

Domande Frequenti

Implementazione del Codice

import textwrap

def text_to_columns(text: str, num_columns: int, col_width: int = 30) -> str:
    """Split text into N columns with specified column width."""
    lines = text.splitlines()
    wrapped = []
    for line in lines:
        if line.strip():
            wrapped.extend(textwrap.wrap(line, col_width) or [""])
        else:
            wrapped.append("")

    # Pad to fill columns evenly
    rows = -(-len(wrapped) // num_columns)  # ceiling division
    wrapped += [""] * (rows * num_columns - len(wrapped))

    result_lines = []
    for r in range(rows):
        row_parts = []
        for c in range(num_columns):
            idx = c * rows + r
            cell = wrapped[idx] if idx < len(wrapped) else ""
            row_parts.append(cell.ljust(col_width))
        result_lines.append("  ".join(row_parts))

    return "\n".join(result_lines)

text = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. " * 3
print(text_to_columns(text, num_columns=2, col_width=40))

Comments & Feedback

Comments are powered by Giscus. Sign in with GitHub to leave a comment.