summaryrefslogtreecommitdiff
path: root/src/subtitle_asset_internal.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2021-10-13 22:18:59 +0200
committerCarl Hetherington <cth@carlh.net>2021-10-13 22:18:59 +0200
commit8bc480da2db924349465dbe557f87bd6f05b7fdd (patch)
tree9fcbab45685746b7a00b1045aca19f495f4f92df /src/subtitle_asset_internal.cc
parent0ecf58d20eec5e9d10ee4b9f0440d232d875f94a (diff)
Basic implementation of <Space> tag in subtitles.v1.8.3
Diffstat (limited to 'src/subtitle_asset_internal.cc')
-rw-r--r--src/subtitle_asset_internal.cc12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/subtitle_asset_internal.cc b/src/subtitle_asset_internal.cc
index bf73fcc3..7a10f472 100644
--- a/src/subtitle_asset_internal.cc
+++ b/src/subtitle_asset_internal.cc
@@ -134,9 +134,17 @@ order::Part::as_xml (xmlpp::Element* parent, Context &) const
xmlpp::Element*
-order::String::as_xml (xmlpp::Element* parent, Context &) const
+order::String::as_xml (xmlpp::Element* parent, Context& context) const
{
- parent->add_child_text (text);
+ if (fabs(_space_before) > SPACE_BEFORE_EPSILON) {
+ auto space = parent->add_child("Space");
+ auto size = raw_convert<string>(_space_before, 2);
+ if (context.standard == Standard::INTEROP) {
+ size += "em";
+ }
+ space->set_attribute("Size", size);
+ }
+ parent->add_child_text (_text);
return 0;
}