你出了一张海报、一张产品 mockup 或一张 UI 截图,构图、灯光都到位,但标题写成了 “DSCONUT” 或 “Sumemr Sael”。对大多数扩散模型来说,文字不是一等公民,字母只是模型从像素里近似出来的纹理,所以它”拼字”的方式和它画毛发、画树叶是一回事。
最快的修法(能覆盖约 80% 的情况):把带文字的那张图单独挪到排版级模型上,并把要写的字放进英文直引号里。截至 2026 年 6 月,最强的三个选择是 Ideogram 3.0(多段文字的海报最稳)、GPT Image 2(非拉丁文字和密集排版最强;自 2026 年 4 月 21 日起是 ChatGPT 里的默认图片模型)和 Nano Banana 2 / Gemini 3.1 Flash Image(最快,而且能用一句大白话改掉写错的词,不用 mask)。换了模型字符串还是崩,就别再重摇了,直接到 Figma 或 Photoshop 里合成真字体。后面这份指南,是给”快速修法不够用”时的决策路径。
先判断你属于哪一类
动手前先诊断。文字乱码绝大多数是下面某一类:
| 症状 | 最可能的原因 | 去看 |
|---|---|---|
| 任何 prompt、任何 seed,每个字母都错 | 弱文字模型(SDXL / SD 1.5 / 老 Midjourney) | Step 1 |
| 前几个字母对,后面开始飘 | 字符串太长(超过约 20 字符) | Step 2 |
| 大横幅文字没问题,小标签糊成一团 | 文字区域像素太少 | Step 3 |
| 黑体能写,你要的”花体”不行 | 要求了风格化字体 | 原因 #4 |
| 三段文字里总有一段是错的 | 多段文字互相抢资源 | Step 1(Ideogram 3.0) |
| 拉丁没问题,CJK / 阿拉伯 / 重音崩了 | 弱文字模型上的非拉丁文字 | Step 1(GPT Image 2) |
| 4 张里只有 1 张崩 | 是 seed 噪声,不是结构性问题 | 重摇 seed |
常见原因
按实际根因命中率排序。
1. 模型本身就不擅长文字(常见根因)
SD 1.5、SDXL 原版和 Midjourney(到 v7,连 2026 年 6 月 10 日转正的 v8.1 默认版也基本如此)都把字母当成视觉噪点,prompt 写得再好,连续 4-6 个字母正确就算极限了。2026 年的第三方测试里,Midjourney 在多词字符串上的图内文字准确率仍只有 30-40% 上下。下面这些排版级模型训练时专门考虑过文字,短字符串能做到约 90-95%:
- Ideogram 3.0:标题文字约 90-95%,也是唯一能在一张图里稳定摆好多段独立文字块的模型。
- GPT Image 2(自 2026 年 4 月 21 日起为 ChatGPT 默认;API 里是
gpt-image-2):拉丁文字报告约 95-99%,也是第一个能把 CJK、印地、孟加拉、阿拉伯文渲染到可生产质量的主流模型。 - Nano Banana 2 / Gemini 3.1 Flash Image:短文字与上面两个持平,1-2 秒出图。
- Flux(Pro / Dev / Flux 2)和 Imagen 4 / Imagen 4 Ultra:单行标题很强,但多段布局弱一些。
如何判断:看你用的模型。SDXL / SD 1.5 / Midjourney,根因就是模型,换比硬怼快。
2. 文字字符串太长
支持文字的模型也只擅长 20-25 字符以内。“SUMMER SALE 2026” 这种横幅很稳,整段营销文案就别想了。把一长行拆成两短行(各自加引号),通常就能把准确率救回来。
3. 文字区域在画面里占的像素太少
像素预算这事儿和脸是一样的。字母每个字至少要 32-48 像素高才能看清。小徽章、页脚行掉到这条线以下就糊了。
4. 要求了风格化字体
“羊皮纸上的手写花体”、“喷漆涂鸦字母”:这些把模型推到训练数据稀疏的区间。支持文字的模型默认也只擅长粗黑体,离开默认就掉链子。
5. 一张图里有多段文字
海报同时有大标题、副标题、tagline,模型要正确画三段独立文字。单段命中 95% 的模型,三段一起就大幅下滑;Ideogram 3.0 在这里最抗压,因为它给每一段单独跑一遍布局。
6. 非拉丁文字
老模型主要训练英语,所以 CJK、阿拉伯、西里尔、天城文,甚至带重音的拉丁字母(德语 umlaut、法语重音)都比纯 ASCII 崩得早得多。这一条是 2026 年真正变了的原因:GPT Image 2 和 Nano Banana 2 现在能把这些文字渲染得不错,所以非拉丁文字的修法通常是”换到这两个模型之一”,而不是”放弃 AI 出文字”。老模型和开源权重栈(SDXL、没做 CJK 微调的 Flux)仍然会把非拉丁文字写崩。
动手前先确认
- 把出问题那张图的 seed、完整 prompt、模型、档位都存下来。
- 想清楚是不是非得让 AI 出文字。商业设计稿,Figma / Photoshop 里合成真字体几乎一直是更快、更准的选择。
- 数 prompt 里有多少字符、多少段独立文字,标清哪些必须正确、哪些是装饰性的。
- 同 prompt 不同 seed 出 4 张。4 张崩 1 张是噪声;4 张全崩是 prompt 或模型层面的问题。
需要收集的信息
- 完整 prompt、模型名、版本、档位。
- 把乱码区域 100% 裁出来。
- 同模型最近几张图是不是都这样崩文字。
- 用途(印刷、网页 hero、社交卡片):印刷对准确度要求最高。
- 总字符数和独立文字段数。
一步步修复
按 ROI 排序。
Step 1:换成支持文字的模型再出这一档
在 SDXL 或 Midjourney 上的话,最大幅度的动作是直接换到训练时考虑过文字的模型。截至 2026 年 6 月,按任务挑:
- Ideogram 3.0:短标题、多段独立文字块、基础排版风格最稳。一张图里超过一行文案的海报、广告、招牌,默认用它。
- GPT Image 2(在 ChatGPT 里,或 API 的
gpt-image-2):非拉丁文字(中、日、韩、印地、孟加拉、阿拉伯)和密集 / 曲面排版最强。 - Nano Banana 2 / Gemini 3.1 Flash Image(在 Gemini app 或 Gemini API 里):最快,短文字强,而且能用一句话改掉已有图里的文字。
- Flux 2(Pro / Dev) 和 Imagen 4 / Imagen 4 Ultra:写实和单行标题非常强,多段布局弱一些。
主流水线哪怕仍在 SDXL 或 Midjourney 上,文字密集的部分就单独到这几个里出。一个常见的专业分工是:底图用 Flux 或 Midjourney,文字块到 Ideogram 3.0 重出,或者直接合成(Step 5)。
Step 2:给要写的字加引号,再砍短、简化
按顺序两步:
- 把要写的字放进英文直引号里,比如 prompt 写 the text reads
"SUMMER SALE"。加引号是 GPT Image 2、Ideogram 3.0、Nano Banana 2 上单条收益最高的 prompt 改动,能把拉丁文字准确率稳稳推向 99%。在 GPT Image 2 上,遇到生僻品牌名还可以在指令末尾加spell it verbatim, no extra characters。 - 然后砍短。 每行引号里的文字砍到约 20 字符以内,能去的标点就去,优先全大写(大写字形比小写好画)。生僻品牌名第一次就逐字母拼出来。如果弱模型把重音和特殊字符丢了,可以在合成那一步再加回来。
Step 3:在画面里给文字区域更多像素
文字必须在画里:
- 海报换成竖比例,让标题获得更多纵向像素。
- 产品 mockup 拉近到 label 上。
- UI 截图直接提高基础分辨率。
Step 4:只修文字区域(不整张重摇)
构图锁死、但文字写错:不要整张重出。2026 年最快的路子是对话式、免 mask 的编辑:
- Nano Banana 2 / Gemini app:把图留在对话里,说
change the headline to read "SUMMER SALE", keep everything else identical。它的语义分割能力会自己找到文字区域,不用画 mask。 - GPT Image 2(ChatGPT 里):在同一段对话里回复
fix the spelling so the title reads "SUMMER SALE" exactly。它会在已有图上重渲,而不是从头再来。
如果你在开源权重或手动流水线上,就显式画 mask:
- SDXL / A1111:对文字区域走 img2img inpaint,denoising 0.6-0.8,prompt 只聚焦带引号的文字。
- ComfyUI:用 inpaint 工作流 + 手画矩形 mask 罩住文字。
- Midjourney:用 Editor / Vary (Region),把文字区域涂出来,prompt 改写成带引号的文字内容。
- Photoshop:对文字区域用 Generative Fill,prompt 只写带引号的目标字符串。
Step 5:合成真字体作为最后退路
按 1-4 走完文字还是不行,停手别再硬怼。让模型出”没有文字”的图(或用占位矩形),再到 Figma / Photoshop / Affinity 里加真字体。这本就是任何对文字准确度有要求的设计稿的标准生产流程,多花 30 秒,省 30 分钟。
清晰的交接步骤:
- 在 AI prompt 里把文字字符串换成 “blank rectangular label” 或 “empty banner”。
- 出一张有占位区域的图。
- 进设计工具,在占位上叠真字体图层。
- 如果标签在 3D 表面上,用变形 / warp 对透视。
怎么确认已经修好
- 在 100% 缩放下逐字符读每段文字。拼写错和漏字在适应屏幕缩放下很容易看漏。
- 找别人朗读一遍。看自己写的文案有盲点是真的。
- 多段文字布局,每一段单独检查。
- 印刷件就按交付尺寸打样。屏幕上看着没事,印出来字母可能就散了。
长期预防
- 印刷件,以及任何错一个字母都不能接受的项目,直接合成真字体。AI 出图自带文字只用在情绪板、概念稿和快做的社交卡片。
- 维护一个模型偏好表:多段文字给 Ideogram 3.0;非拉丁文字给 GPT Image 2 或 Nano Banana 2;写实底图可以留在 Flux 2 / Midjourney 上,文字后加。
- 永远把要写的字加引号,标题默认短 + 大写。
- 准备一段”空白 label”的 prompt 模板,让模型主动不出文字,方便后续合成。
- 多语言项目,在弱文字或开源权重栈(SDXL、原版 Flux)上仍然一开始就走合成;在 GPT Image 2 / Nano Banana 2 上可以让模型渲文字,但出来后让母语者逐字核对。
常见坑
- 同 prompt 重摇 20 次等着出对的文字。4 次还崩就换模型或上合成。
- 不给文字加引号。不加引号等于邀请模型”改写""润色”你的文案。
- 缩略图上看着没问题,必须 100% 缩放检查。
- 忘了自己输入法可能把单词改了。
- 在正向 prompt 里加 “high quality typography” 期待奇迹。对结构性弱的文字模型基本没用。
FAQ
Q:多段文字的海报哪个模型最好? A:截至 2026 年 6 月,Ideogram 3.0 对多段布局最稳(大标题、副标题、tagline 一次出齐),准确率约 90-95%。Flux 2 和 Imagen 4 单行很强,但三段以上明显弱一档。其中任何一段是非拉丁文字,就选 GPT Image 2。
Q:单条最快的 prompt 修法是什么?
A:把要写的字放进英文直引号里,比如 "SUMMER SALE"。在 GPT Image 2、Ideogram 3.0、Nano Banana 2 上,光这一条就能把拉丁文字推向 99%。生僻品牌名再加 spell it verbatim, no extra characters。
Q:能不能不整张重出、只改写错的那个词? A:能。在 Gemini app(Nano Banana 2)或 ChatGPT(GPT Image 2)里,在同一段对话里回复带引号的正确文字,再加一句”keep everything else identical”。不用画 mask,模型会就地改文字区域。SDXL / ComfyUI / Midjourney 上则手动对该区域做 inpaint(Step 4)。
Q:AI 终于能写中文、日文、阿拉伯文了吗? A:短字符串可以。GPT Image 2(2026 年 4 月)和 Nano Banana 2 已经能把 CJK、印地、孟加拉、阿拉伯文渲染到可生产质量。但每个字仍要让母语者核对;长文案或有法律风险的文案,还是合成真字体。老模型和开源权重模型仍然会把非拉丁文字写崩。
Q:能不能强制模型用某个具体字体? A:不可靠。你可以描述风格(粗黑体、衬线大标题)拿到近似,精确字体匹配只能通过合成做到。
Q:为什么小尺寸下文字崩得更厉害? A:像素预算。每个字符需要约 32-48 像素的纵向高度才能可读,小文字直接掉到这条线以下。
Q:有没有一个负面 prompt 能修好乱码?
A:把 garbled text, misspellings, malformed letters 写进负面 prompt 在 SDXL 上能稍微改善,但解决不了底层训练缺口。要明显改善,靠换模型或给文字加引号。