Reve 2.1

Reve 2.1 is Reve's flagship image model for generation and editing, built around a layout-based intermediate representation that makes image structure directly addressable. It is designed for dense scenes, fine typography, and precise iterative edits at native 4K, with stronger prompt understanding, world knowledge, and foreign-text rendering than Reve 2.0.

Complete technical specification for integration
Ready-to-use code snippets for common workflows
Step-by-step tutorials for advanced use cases
← All GuidesTypography and multilingual text rendering with Reve 2.1
How to place text precisely inside a Reve 2.1 composition and render accurate copy across Chinese, Devanagari, Cyrillic, Arabic, and mixed-script layouts at 4K.
Introduction
Typography is where most image models stop being useful for real design work. Latin scripts get most of the way there and then wobble on a diacritic. Non-Latin scripts break outright: Devanagari conjuncts collapse, Cyrillic ё loses its dots, Arabic letter joins fall apart, kanji strokes get invented. The other failure is quieter but just as fatal: the model puts the words somewhere and it isn't where the layout needs them, because the model doesn't understand what "under the masthead" or "down the left margin" means.
Reve 2.1 responds to two prompt patterns that keep typography under control: positional vocabulary (upper third, left margin, base plate, base-right corner) is read as a directive, and quoted copy is rendered as the literal string with the target script's joins and diacritics. Every output runs at native 4K, which is the pixel budget that keeps small tracked capitals and dense credits blocks legible on the delivered asset. The trade-off is cost: 4K at $0.20 per generation, so iteration on typography-heavy work is expensive and prompts benefit from being specific up front.

A Portuguese jazz festival poster in portrait ~3:4 orientation, mid-century modern style. Deep aubergine background with a warm cream silhouette of a saxophonist mid-solo. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream. Subtitle Vigésima quinta edição in italic serif with é and ç accurate. Dense credits column reading 12 · 13 · 14 DE OUTUBRO · CENTRO CULTURAL DE BELÉM · TEATRO CAMÕES · CASA DA MÚSICA in tracked capitals, accents É, Õ, Ú correctly formed.
The poster above is one prompt at native 4K portrait (3328 × 4608). Every accented character in the venue list renders correctly and the subtitle italics hold their weight.
Request shape
A typography-heavy Reve request is the standard imageInference shape with a long positivePrompt and a portrait 4K preset when the deliverable is poster-shaped. width and height are optional in general but recommended for print work so the output lands on a known aspect.
import { createClient } from '@runware/sdk'
const client = await createClient({ apiKey: process.env.RUNWARE_API_KEY })
await client.connect()
const [result] = await client.run({
model: 'reve:2@1',
positivePrompt: 'A Portuguese jazz festival poster in portrait orientation. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream on deep aubergine. Subtitle Vigésima quinta edição in italic serif directly below.',
width: 3328,
height: 4608
})import asyncio
import os
from runware import Runware
async def main():
async with Runware(api_key=os.environ["RUNWARE_API_KEY"]) as client:
results = await client.run({
"model": "reve:2@1",
"positivePrompt": "A Portuguese jazz festival poster in portrait orientation. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream on deep aubergine. Subtitle Vigésima quinta edição in italic serif directly below.",
"width": 3328,
"height": 4608
})
asyncio.run(main())curl https://api.runware.ai/v1 \
-H "Authorization: Bearer $RUNWARE_API_KEY" \
-H "Content-Type: application/json" \
-d '[
{
"taskType": "imageInference",
"taskUUID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"model": "reve:2@1",
"positivePrompt": "A Portuguese jazz festival poster in portrait orientation. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream on deep aubergine. Subtitle Vigésima quinta edição in italic serif directly below.",
"width": 3328,
"height": 4608
}
]'runware run reve:2@1 \
positivePrompt="A Portuguese jazz festival poster in portrait orientation. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream on deep aubergine. Subtitle Vigésima quinta edição in italic serif directly below." \
width=3328 \
height=4608{
"taskType": "imageInference",
"taskUUID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"model": "reve:2@1",
"positivePrompt": "A Portuguese jazz festival poster in portrait orientation. Title FESTIVAL DE JAZZ DE LISBOA across the upper third in tall condensed serif capitals in warm cream on deep aubergine. Subtitle Vigésima quinta edição in italic serif directly below.",
"width": 3328,
"height": 4608
}[
{
"taskType": "imageInference",
"taskUUID": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"imageUUID": "9c1b2d3a-4e5f-6789-abcd-ef0123456789",
"imageURL": "https://im.runware.ai/image/os/a14d18/ws/2/ii/9c1b2d3a-4e5f-6789-abcd-ef0123456789.jpg"
}
]A few things worth knowing for typography-heavy work:
- There is no separate text or typography parameter. Copy that should appear in the image goes into the prompt as a literal string in the target script. See the prompting guide for the general prompt structure.
- Naming the deliverable ("poster", "album cover", "book cover", "packaging") inside the prompt biases Reve toward the right aspect when you'd rather not pick a preset by hand.
Full parameter constraints and the closed list of valid width and height pairs live in the Reve 2.1 model reference.
Placing text precisely in the composition
Positional phrases behave like layout directives in Reve's prompt handling. "Across the upper third", "down the left margin", "in the lower right corner", "under the masthead", "along the base plate" are read as instructions that reserve the named region for the text they attach to. Without those clauses the model still puts the copy somewhere, but "somewhere" is the model's choice and the design starts to drift.
The album cover below is a positioning drill in one script. Everything is English, so the section is doing one thing: showing how naming the region controls where each block lands.

A jazz vinyl LP album cover in 1:1 square. Deep midnight-blue matte background. Title AFTER HOURS in tall condensed serif capitals across the upper third in warm cream, letter-spaced wide. Artist name MARISOL LEIVA QUARTET in small tracked cream sans-serif capitals directly below the title, centered. SIDE A in the lower-left quadrant in fine tracked warm gold serif, SIDE B mirrored in the lower-right quadrant. Small centered credit line RECORDED LIVE AT VILLAGE VANGUARD · SPRING 1962 · BLUE ROOM RECORDS in fine tracked cream capitals at the bottom.
Five separate text blocks, one prompt at 4K square (4096 × 4096). The title sits across the upper third. The artist name sits directly below the title. The two side labels sit in the lower-left and lower-right quadrants. The credit line sits at the bottom, centered. Each phrase named the region and the model reserved it, so nothing crowds anything else.
A short vocabulary that Reve reads reliably:
- Vertical zones: "across the upper third", "in the middle band", "at the base", "across the top edge".
- Horizontal alignment: "centered", "flush left", "flush right", "along the left margin", "down the left side vertically".
- Named quadrants: "in the lower-left quadrant", "in the upper-right corner", "along the bottom-right edge", "in the top-left corner".
- Relational placement: "under the masthead", "directly below the title", "beside the illustration", "along the base plate".
- Reading direction for non-Latin scripts: "down the right side vertically" for classical Chinese layouts, "reading right to left" for Arabic.
Combine one clause from each group when the deliverable is text-dense. "Title across the upper third, subtitle directly below, credits along the base plate" hands Reve three separate layout targets and each one reads as its own directive.
Positional vocabulary works whether or not you set width and height. The picked preset defines the canvas, but "upper third" is proportional to whatever aspect Reve is composing on. For text-heavy print work a 4K portrait preset makes the fine credits and small tracking readable.
Multilingual rendering across scripts
Non-Latin scripts each break in their own way in most image models. Simplified Chinese loses strokes on dense compound characters. Devanagari drops conjuncts and matras. Cyrillic collapses into a Latin fallback on letters that look adjacent but aren't. Arabic loses its contextual joins where the letters should connect. The four commercial deliverables below run one prompt each at native 4K in a script that reliably breaks elsewhere.

A Simplified Chinese fashion magazine cover in portrait ~3:4. Female East Asian model in a warm charcoal wool coat against a soft muted sage-green studio backdrop. Vertical masthead 蔚蓝 in tall modern song serif down the left side in warm charcoal, correct stroke count. Horizontal cover line 冬日的静默与光 across the top in fine sans-serif. Small tag WEILAN CHINA in the lower right in tracked serif capitals. Editorial photorealism.

A Hindi film poster in portrait ~3:4. Warm-lit stage scene with a female classical dancer in a crimson silk sari and a male violinist in a charcoal kurta under a warm marigold spotlight. Title रागों की रात in tall condensed Devanagari across the upper third in warm cream, correct conjuncts and matras. Subtitle एक शास्त्रीय संगीत की कहानी in italic-style Devanagari below in warm gold. Dense Devanagari credits row along the base plate.

A Ukrainian literary fiction book cover in portrait ~3:4. Minimalist stylised watercolour of a lone sunflower in a Ukrainian countryside at dusk, soft indigo sky. Title Тиша над полем across the upper third in elegant modern Cyrillic serif in warm cream. Author name ОКСАНА КРАВЧЕНКО in tracked Cyrillic capitals below. Small English publisher tag SEVERNA PRESS · SUCHASNA LITERATURA at the bottom in fine tracked Latin capitals. Editorial matte paperback aesthetic.

An Arabic luxury saffron packaging design in portrait ~3:4. Tall matte black saffron tin with a fine polished gold rim, centred on a warm cream marbled backdrop with soft directional studio light from the upper left. Brand name زعفران قصر in elegant modern thuluth-style calligraphy in warm rose gold across the middle, correct letter joins and dot placement. Tagline in smaller naskh below reading من قلب المطبخ الفاخر. Small dual-language tag SAFFRON · SAFRAN · 2G near the base.
Look at what each one holds that most models break:
- Simplified Chinese. 蔚 and 蓝 are dense compound characters. The masthead runs vertically down the left side, and each stroke composes cleanly at the size Reve chose, no missing radicals. The horizontal cover line 冬日的静默与光 lands on the top edge in a lighter weight, so both blocks read without fighting for attention.
- Devanagari. रागों की रात carries the ों conjunct and the matra above रा that most models drop or misplace. The subtitle एक शास्त्रीय संगीत की कहानी carries the ्र half-consonant conjunct inside शास्त्रीय, which is where Devanagari fails most often. The whole hierarchy sits over the illustration without cropping the matras.
- Ukrainian Cyrillic. The ш in Тиша and the ч in КРАВЧЕНКО carry letterforms that look Latin-adjacent but aren't, and the model rendered them as their own letters instead of dropping into a Latin fallback. The Latin publisher line at the base uses a visibly different weight so the two scripts don't compete.
- Arabic. زعفران قصر reads right to left, and the ص in قصر keeps its correct medial join with the ر after it. The naskh tagline sits below the thuluth in a lighter, more legible weight, which is how Arabic packaging typography actually splits display copy from body copy.
Every one of these prompts pairs the named script and its type treatment with the literal copy pasted in the target characters. "Simplified Chinese in tall song serif" plus 蔚蓝 as the actual masthead is what tells Reve both the character system and the visual finish in one clause. A separate position clause (upper third, base plate, left margin, base-right corner) then hands the model the region to reserve for that block.
Paraphrased text does not work. "A Chinese masthead reading spring in the city" produces an invented string that looks like Chinese to a Latin-script eye and is often nonsense in the target script. Write the actual characters in the prompt. If you can't type them, paste them.
Multi-script layouts
Bilingual deliverables (a Chinese product with an English brand mark, an Arabic label with a French translation line) don't need a second call. Reve composes multiple scripts into one layout when each block is named separately with its own script and its own position.

Simplified Chinese and English bilingual tea packaging box in portrait ~2:3. Tall matte cream cardboard box on a warm cream backdrop, loose dark tea leaves scattered in front. Chinese brand name 云山茶社 in vertical hand-brush ink style down the upper right side of the box in warm charcoal, four characters top to bottom. English brand name YUNSHAN TEA COMPANY in fine tracked warm charcoal serif capitals running vertically to its left. Tea variety 云雾白牡丹 · 春茶头采 across the middle in warm charcoal serif, and directly below in tracked Latin capitals SILVER PEONY WHITE TEA · FIRST FLUSH SPRING HARVEST. Dual-language weight lines 净含量 · 50克 and NET WT · 50G / 1.76 OZ at the base.
The Chinese and English brand marks share the front of the box but read as two intentional blocks, not a translation retrofit. The Chinese runs vertically as brand ink brushwork, the English runs vertically in a fine tracked serif that visually rhymes with it. In the middle band, the tea variety uses the same horizontal-Chinese-over-horizontal-Latin pattern, so the eye reads them as a pair. At the base, the weight line follows the same rhythm again.
The prompt handled the balance in prose. Each block got its own script + treatment clause paired with its own position. The Chinese brand mark got "vertical hand-brush ink style down the upper right side". The English brand mark got "fine tracked warm charcoal serif capitals running vertically to its left". The tea variety pair got "in the middle" for the Chinese and "directly below" for the Latin. Reve composed the four pairs into a single design without any of them cropping or overrunning each other.
The pattern generalises to any bilingual layout. When two scripts share a layout, name each block as if it were its own poster, then say where it sits relative to its partner. "Directly below", "flush left of", "aligned with the baseline of", "in the same weight as" all read as position tokens the model honours.
4K for print-quality text
Native 4K matters more for typography than for photography. A subtitle set in fine italic serif and a dense credits column with tight tracking both live in a pixel budget where the difference between 2K and 4K is the difference between "legible print asset" and "we'll composite the text externally". The small dual-language label on the saffron tin above is a good stress test: at 2K it starts blurring the SAFRAN pass, at 4K the tracking holds.
For text-heavy print work, a portrait 4K preset is the default. 3328 × 4608 (~3:4) handles most cover and poster deliverables, and 3328 × 4864 (~2:3) gives extra vertical run for a credits row along the base plate. The full aspect list and the how-to-pick guidance live in the prompting guide.
Small text is where the 4K budget pays off. A 12-word tracked credit line at 2K is a coin flip on legibility, and at 4K it holds. The trade-off is generation time and cost per image, so iterate at any preset and pin the aspect on the delivered asset.
Known limits
Reve is strong on typography but not perfect. Every deliverable with in-image copy needs a proofing pass by someone who reads the script, because image models still typo. Diacritics shift, accented characters drop, and dense credits blocks can substitute a look-alike letter that reads correctly at a glance but wrong on inspection.
Full paragraphs of running body copy are still out of scope on any current image model, Reve included. Titles, subtitles, tag lines, and credit blocks render cleanly, but long-form running text should be composited externally rather than generated in-image.
The examples in this guide cover Latin (with accents), Simplified Chinese, Devanagari, Cyrillic, and Arabic. Other scripts render, but fidelity outside the set tested here is unknown and needs a per-project verification pass.
Tips
-
Quote the exact copy inline. Paste the literal characters in the target script rather than describing them in English. Paraphrased copy produces invented strings that read as noise to a native speaker.
-
Pair the script name with a type treatment. "Simplified Chinese in tall song serif", "Devanagari in italic-style condensed", "Cyrillic in a modern serif", "Arabic in thuluth calligraphy". Naming only the script defaults to a generic sans of that script.
-
Use positional vocabulary for every text block. "Across the upper third", "along the base plate", "down the left margin", "under the masthead". Reve treats each phrase as a layout target and reserves the region for the named copy.
-
Match visual weight across scripts in bilingual layouts. Give the two scripts their own weight and colour vocabulary in the prompt so the layout reads as intentional rather than as a translation drop-in.
-
Pin a 4K portrait preset for print work. 3328 × 4608 handles most cover and poster deliverables. 3328 × 4864 gives extra vertical run for a credits row along the base plate.
-
Keep in-image copy under a full paragraph. Titles, subtitles, tag lines, dense credits columns, and small legal marks all render cleanly. A full paragraph of body text is where any current image model starts producing typos.
-
Name reading direction for non-Latin scripts. "Down the right side vertically" for classical Chinese layouts, "reading right to left" for Arabic. Reve infers direction from the script most of the time, but stating it explicitly is more reliable inside a multi-script composition.
-
Describe the tracking when it matters. "Tracked capitals", "letter-spaced wide", "tight but legible tracking", "fine hairline tracking". The model reads those tokens as typographic instructions and the credits column comes back with the spacing named.
-
Cross-reference the sibling guides. The prompting guide covers structural composition and the full 4K preset list. The reference editing guide covers
<frame>N</frame>addressing when the typography needs to sit on top of an existing photograph.