Text Formatting Overview
A short result may be assembled from fragments or shaped with a format pattern. These topics show how to build strings and describe the appearance of individual values. For longer documents with conditions or repeated sections, see Text Rendering. For substituting named sources and filters in text, see Text Placeholders.
Building Strings Efficiently
A fixed set of fragments, a dynamically collected list, a mutable editor, and a width-independent builder have different allocation behavior even when they produce identical text. Building Strings compares these approaches and explains when one exact allocation can replace repeated growth and copying.
Formatting Structured Text
When output has a stable shape, a format pattern keeps the surrounding text and value positions visible in one place. Formatting Text with StringFormat explains reusable patterns, automatic and positional placeholders, supported argument types, and the choice between building a result and appending it to an existing builder.
Describing Values with Named Format Specifications
Formatting choices are easier to review when they name both the expected value family and each requested behavior. Named Format Specifications introduces the primary named syntax and covers every text, integer, floating-point, Boolean, and byte-block option.
Maintaining Compact Compatibility Specifications
Compact C++-style specifications remain useful for existing patterns and familiar small fields.
Compatibility Format Specifications documents the supported subset, its Core escaping extensions, and the limits
that distinguish it from both std::format and the named syntax.