UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
SubtitleManager.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "CoreMinimal.h"
7#include "UObject/ObjectKey.h"
8
9#define SUBTITLE_SCREEN_DEPTH_FOR_3D 0.1f
10
11class FCanvas;
12
15
16
20{
21public:
22
24 : Index(InIndex)
27 , bSingleLine(InbSingleLine)
28 , Subtitles(MoveTemp(InSubtitles))
29 { }
30
33
35 float Priority;
36
38 bool bSplit;
39
41 bool bSingleLine;
42
44 TArray<FSubtitleCue> Subtitles;
45};
46
47
64
65
70{
71public:
72
74 void KillAllSubtitles(void);
75
82
90
97
104 PTRINT FindHighestPrioritySubtitle(float CurrentTime);
105
115 ENGINE_API void QueueSubtitles(PTRINT SubtitleID, float Priority, bool bManualWordWrap, bool bSingleLine, float SoundDuration, const TArray<FSubtitleCue>& Subtitles, float InStartTime, float InCurrentTime);
116
118
123
131
138 {
139 return (ActiveSubtitles.Num() > 0);
140 }
141
148 {
149 return CurrentSubtitleHeight;
150 }
151
158
160 FSubtitleManagerSetSubtitleText& OnSetSubtitleText() { return OnSetSubtitleTextDelegate; }
161
170
171private:
172
174 void DisplaySubtitle_ToDisplays(FActiveSubtitle* Subtitle);
175
177 FString SubtitleCuesToString(FActiveSubtitle* Subtitle);
178
179private:
180
181 FSubtitleManagerSetSubtitleText OnSetSubtitleTextDelegate;
182
184 TMap<PTRINT, FActiveSubtitle> ActiveSubtitles;
185
187 float CurrentSubtitleHeight = 0;
188
191};
FPlatformTypes::PTRINT PTRINT
A signed integer the same size as a pointer.
Definition Platform.h:1148
FPlatformTypes::int32 int32
A 32-bit signed integer.
Definition Platform.h:1125
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
#define DECLARE_MULTICAST_DELEGATE_OneParam(DelegateName, Param1Type)
Definition DelegateCombinations.h:49
UE_INTRINSIC_CAST UE_REWRITE constexpr std::remove_reference_t< T > && MoveTemp(T &&Obj) noexcept
Definition UnrealTemplate.h:520
uint8_t uint8
Definition binka_ue_file_header.h:8
Definition CanvasTypes.h:211
Definition SubtitleManager.h:70
bool HasSubtitles()
Definition SubtitleManager.h:137
void KillAllSubtitles(void)
Definition SubtitleManager.cpp:22
ENGINE_API void QueueSubtitles(PTRINT SubtitleID, float Priority, bool bManualWordWrap, bool bSingleLine, float SoundDuration, const TArray< FSubtitleCue > &Subtitles, float InStartTime, float InCurrentTime)
Definition SubtitleManager.cpp:64
static ENGINE_API FSubtitleManager * GetSubtitleManager()
Definition SubtitleManager.cpp:483
void DisplaySubtitle(FCanvas *Canvas, FActiveSubtitle *Subtitle, FIntRect &Parms, const FLinearColor &Color)
Definition SubtitleManager.cpp:124
void TrimRegionToSafeZone(FCanvas *Canvas, FIntRect &InOutSubtitleRegion)
Definition SubtitleManager.cpp:360
ENGINE_API void DisplaySubtitles(FCanvas *InCanvas, FIntRect &SubtitleRegion, float InAudioTimeSeconds)
Definition SubtitleManager.cpp:421
FSubtitleManagerSetSubtitleText & OnSetSubtitleText()
Definition SubtitleManager.h:160
float GetCurrentSubtitlesHeight()
Definition SubtitleManager.h:147
PTRINT FindHighestPrioritySubtitle(float CurrentTime)
Definition SubtitleManager.cpp:386
void KillSubtitles(PTRINT SubtitleID)
Definition SubtitleManager.cpp:27
void ENGINE_API SetMovieSubtitle(UObject *SubtitleOwner, const TArray< FString > &Subtitles)
Definition SubtitleManager.cpp:489
void SplitLinesToSafeZone(FCanvas *Canvas, FIntRect &SubtitleRegion)
Definition SubtitleManager.cpp:270
Definition Text.h:385
Definition Array.h:670
Definition UnrealString.h.inl:34
Definition Object.h:95
U16 Index
Definition radfft.cpp:71
Definition Color.h:48
Definition SubtitleManager.h:49
float RequestedStartTime
Definition SubtitleManager.h:62
float Duration
Definition SubtitleManager.h:58
float SubtitlePriority
Definition SubtitleManager.h:57
FQueueSubtitleParams(const TArray< FSubtitleCue > &InSubtitles)
Definition SubtitleManager.h:50
uint8 bSingleLine
Definition SubtitleManager.h:60
uint64 AudioComponentID
Definition SubtitleManager.h:54
uint8 bManualWordWrap
Definition SubtitleManager.h:59
const TArray< FSubtitleCue > & Subtitles
Definition SubtitleManager.h:61
PTRINT WaveInstance
Definition SubtitleManager.h:56
TWeakObjectPtr< UWorld > WorldPtr
Definition SubtitleManager.h:55
Definition WeakObjectPtrTemplates.h:25