LaTeX无内置好莱坞或亚洲剧本格式,需用宏包实现:screenplay宏包支持美式标准但需Xe/LuaLaTeX+ctex处理中文;ctex手动定制适配中文习惯;dramatist宏包支持中英双语剧本但不兼容amsmath公式。
☞☞☞AI 智能聊天, 问答助手, AI 智能搜索, 多模态理解力帮你轻松跨越从0到1的创作门槛☜☜☜

LaTeX没有“好莱坞格式”和“亚洲剧本格式”的内置概念,也不存在官方支持的剧本排版标准切换功能;所谓“好莱坞剧本格式”通常指符合Final Draft或Celtx规范的英文电影剧本(左对齐对话、严格缩进、角色名大写居中等),而“亚洲剧本格式”并无统一行业定义,实践中多为中文编剧自定义的段落结构——这二者都需通过宏包与手动样式控制实现,不能一键切换。
用 `screenplay` 宏包输出好莱坞标准剧本
第一步:在导言区加入 \usepackage{screenplay},该宏包专为美式剧本设计,自动处理场景标题(INT./EXT.)、角色名居中、对话左对齐、括号内动作说明等规则。
第二步:正文用 \begin{screenplay}...\end{screenplay} 环境包裹,内部使用 \scene{}、\character{}、\dialogue{} 等命令标记结构。例如:\scene{INT. COFFEE SHOP - DAY} 会生成全大写、加粗、顶格的场景头;\character{ALICE} 自动居中且加粗;\dialogue{I never said that.} 会左对齐并缩进,符合 industry standard。
注意:该宏包默认只支持英文字符,若直接输入中文角色名或对白,编译会报错或乱码。【必须配合 XeLaTeX 或 LuaLaTeX 编译,并加载 ctex 宏包】,否则中文无法渲染。
用 `ctex` + 手动样式模拟亚洲常用剧本结构
方法一:不依赖专用宏包,仅用 ctex 提供的中文支持 + 基础环境定制。
① 在导言区声明文档类为 \documentclass[UTF8]{ctexrep},加载 ctex 并禁用其自动章节编号:\ctexset{section={number=false}}。
② 定义三个新命令:\newcommand{\scene}[1]{\vspace{1em}\noindent\textbf{【#1】}\vspace{0.5em}} 用于场景描述;\newcommand{\role}[1]{\vspace{0.3em}\noindent\makebox[4em][l]{\textbf{#1}}} 控制角色名左对齐并预留宽度;\newcommand{\lines}[1]{\vspace{0.2em}\noindent\hangindent=2em #1} 处理对白缩进。
③ 正文直接调用:\scene{咖啡馆 内 日} → \role{小李} → \lines{你真的考虑好了?}。这种方式完全可控,适配中文排版习惯,但需自行维护间距与换行逻辑。
用 `dramatist` 宏包兼顾双语剧本需求
如果你需要同一份源码输出中英双语对照剧本(如合拍片分镜脚本),dramatist 是更稳妥的选择。它支持 \character{Alice}[小李] 这类双标签写法,编译时可开关中文/英文字段显示。
加载方式:\usepackage[zh]{dramatist}(加 zh 选项启用中文支持);关键命令包括 \Character{ALICE}{小李}(注册角色)、\DramatisPersonae(生成人物表)、\StageDir{(拿起杯子)}(舞台指示)。
这一步操作起来很简单,直接把文件拖进去就行。但要注意:【dramatist 不兼容 amsmath 的部分命令,若文档含公式,需将数学环境移出剧本区块】。











