Youtube Timed Text两行字幕背景框对齐异常问题咨询
YTT两行字幕背景框错位的解决办法
方法一:将两行内容放在同一个<s>标签内,用换行分隔
把原来拆分的两个<s>标签合并成一个,两行内容直接用换行隔开,YouTube会将其视为一个整体计算背景框,避免因样式设置导致错位。代码示例:
<?xml version="1.0" encoding="utf-8"?> <timedtext format="3"> <head> <wp id="0" ap="0" ah="0" av="0" /> <ws id="0" ju="0" pd="0" sd="0" /> <pen id="0" sz="100" fs="1" fc="#FF0000" /> </head> <body> <p t="1" d="4988" wp="0" ws="0"> <s p="0">ROW 1: XXXXXXXXXX ROW 2: XXXXXXXXXX</s> </p> </body> </timedtext>
方法二:强制统一排版对齐参数
如果必须保留两个<s>标签,可在头部的<wp>标签中设置水平对齐规则,比如ah="1"(水平居中),让两行的背景框都以最长行的宽度为基准计算,确保对齐。代码示例:
<?xml version="1.0" encoding="utf-8"?> <timedtext format="3"> <head> <wp id="0" ap="0" ah="1" av="0" /> <ws id="0" ju="0" pd="0" sd="0" /> <pen id="0" sz="100" fs="1" fc="#FF0000" /> </head> <body> <p t="1" d="4988" wp="0" ws="0"> <s p="0">ROW 1: XXXXXXXXXX</s> <s p="0">ROW 2: XXXXXXXXXX</s> </p> </body> </timedtext>
额外注意事项
- 不要在
<s>标签前后添加多余的空格或空白字符,这些字符会被计入文本宽度,导致背景框计算偏差 - 所有
<s>标签必须引用同一个pen样式ID,避免混用不同的样式定义
内容的提问来源于stack exchange,提问作者uwe
相关产品推荐
相关产品推荐

