用途:为纵向滚动列表提供视觉聚焦机制。靠近焦点中心(通常是画布垂直中心)的行以完全不透明度和粗字重显示,越远的行越淡、越细,形成“排版调光器”效果,是 SP-D 编辑杂志风格催眠感的来源。
主要能力:对每一行计算 d = abs(row.y_in_viewport - focal_y_px),然后同时应用两条渐变:opacity = lerp(1.0, min_opacity, clamp(d / distance_for_min_opacity_px, 0, 1));font_weight = lerp(weight_active, weight_inactive, clamp(d / weight_transition_distance_px, 0, 1))。不透明度与字重叠加,比仅靠位置更精细。
参数:focal_y_px(通常为 canvas_h / 2)、distance_for_full_opacity_px、distance_for_50_opacity_px、distance_for_min_opacity_px、min_opacity、weight_active、weight_inactive、weight_transition_distance_px、easing。
使用方式:作为动效基础组件接入滚动列表渲染流程,按上述公式逐行计算并应用样式;SP-D(editorial-magazine)风格包中默认与 scrolling-index-dual-rail 搭配。
质量检查:活动行应为实色墨色且全字重;非活动行平滑渐变无跳变;min_opacity 不低于 0.15,否则行会完全消失;字重过渡需与不透明度过渡同步。
限制与失败模式:行出现跳变而非渐变,通常是 easing 非 linear 或字重为整数未做平滑插值,应使用浮点字重插值;所有行看起来一样,通常是距离阈值过大,需调小以突出活动行;活动行仍然偏暗,通常是 focal_y_px 设置错误,应确认其为画布垂直中心而非视口垂直中心。具体安装命令与平台支持暂未提供。