Remove unnecessary Content class.
[libdcp.git] / src / interop_subtitle_content.cc
index 4829f077637bdaeb569da22f1749aee7e3578b13..29da0b21f93e3ea93a21967175ff0563d3bcb45a 100644 (file)
@@ -22,6 +22,7 @@
 #include "xml.h"
 #include "raw_convert.h"
 #include "font_node.h"
+#include <libxml++/libxml++.h>
 #include <boost/foreach.hpp>
 #include <cmath>
 
@@ -159,10 +160,10 @@ InteropSubtitleContent::xml_as_string () const
 
                        subtitle_element = font_element->add_child ("Subtitle");
                        subtitle_element->set_attribute ("SpotNumber", raw_convert<string> (spot_number++));
-                       subtitle_element->set_attribute ("TimeIn", i->in().to_string());
-                       subtitle_element->set_attribute ("TimeOut", i->out().to_string());
-                       subtitle_element->set_attribute ("FadeUpTime", raw_convert<string> (i->fade_up_time().to_editable_units(250)));
-                       subtitle_element->set_attribute ("FadeDownTime", raw_convert<string> (i->fade_down_time().to_editable_units(250)));
+                       subtitle_element->set_attribute ("TimeIn", i->in().as_string());
+                       subtitle_element->set_attribute ("TimeOut", i->out().as_string());
+                       subtitle_element->set_attribute ("FadeUpTime", raw_convert<string> (i->fade_up_time().as_editable_units(250)));
+                       subtitle_element->set_attribute ("FadeDownTime", raw_convert<string> (i->fade_down_time().as_editable_units(250)));
 
                        last_in = i->in ();
                        last_out = i->out ();
@@ -171,6 +172,12 @@ InteropSubtitleContent::xml_as_string () const
                }
 
                xmlpp::Element* text = subtitle_element->add_child ("Text");
+               if (i->h_align() != HALIGN_CENTER) {
+                       text->set_attribute ("HAlign", halign_to_string (i->h_align ()));
+               }
+               if (i->h_position() > ALIGN_EPSILON) {
+                       text->set_attribute ("HPosition", raw_convert<string> (i->h_position() * 100, 6));
+               }
                text->set_attribute ("VAlign", valign_to_string (i->v_align()));                
                text->set_attribute ("VPosition", raw_convert<string> (i->v_position() * 100, 6));
                text->add_child_text (i->text());