summaryrefslogtreecommitdiff
path: root/src/lib/string_text.h
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2023-02-27 15:00:34 +0100
committerCarl Hetherington <cth@carlh.net>2023-02-27 15:00:34 +0100
commite163200eaaf65c63d5105949432140f4084de037 (patch)
tree7c35507485aa46b79627c10a215023311e41b6bb /src/lib/string_text.h
parent8ff6586d568c4a2b0a2ac24e690d172f4c01e3c4 (diff)
parentf4f6f4828430dc72e0276c245d32fde228aaa176 (diff)
Merge branch '2389-vpos'
Here we are trying to fix a variety of confusions related to vertical subtitle position (#2389).
Diffstat (limited to 'src/lib/string_text.h')
-rw-r--r--src/lib/string_text.h17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/lib/string_text.h b/src/lib/string_text.h
index 4eef7da05..787231b8c 100644
--- a/src/lib/string_text.h
+++ b/src/lib/string_text.h
@@ -24,6 +24,7 @@
#include "font.h"
+#include <dcp/subtitle_standard.h>
#include <dcp/subtitle_string.h>
@@ -40,7 +41,7 @@
class StringText : public dcp::SubtitleString
{
public:
- StringText(dcp::SubtitleString dcp_, int outline_width_, std::shared_ptr<dcpomatic::Font> font_, dcp::Standard valign_standard_)
+ StringText(dcp::SubtitleString dcp_, int outline_width_, std::shared_ptr<dcpomatic::Font> font_, dcp::SubtitleStandard valign_standard_)
: dcp::SubtitleString (dcp_)
, outline_width (outline_width_)
, font (font_)
@@ -49,18 +50,24 @@ public:
int outline_width;
std::shared_ptr<dcpomatic::Font> font;
+
/** Interop and SMPTE use the same VAlign choices (top, center, bottom) but give them different
- * meanings. This is the standard which should be used to interpret v_align() in this subtitle;
- * valign_standard == SMPTE means:
+ * meanings. To add some extra confusion, it seems that SMPTE changed their minds on this topic
+ * between the 2010 and 2014 versions of standard 428-7, so there isn't even one answer for SMPTE.
+ *
+ * This is the standard which should be used to interpret v_align() in this subtitle.
+ *
+ * valign_standard == SMPTE_{2007,2010} means:
* top - top of screen to top of subtitle
* center - centre of screen to center of subtitle
* bottom - bottom of screen to bottom of subtitle
- * valign_standard == Interop means:
+ *
+ * valign_standard == {INTEROP,SMPTE_2014} means:
* top - top of screen to baseline of subtitle
* center - centre of screen to baseline of subtitle
* bottom - bottom of screen to baseline of subtitle
*/
- dcp::Standard valign_standard;
+ dcp::SubtitleStandard valign_standard;
};