(*j)->in,
(*j)->out,
(*k)->v_position,
+ (*k)->v_align,
(*k)->text,
effective.effect.get(),
effective.effect_color.get()
TextNode::TextNode (xmlpp::Node const * node)
: XMLNode (node)
+ , v_align (CENTER)
{
text = content ();
v_position = float_attribute ("VPosition");
+ string const v = optional_string_attribute ("VAlign");
+ if (v == "top") {
+ v_align = TOP;
+ } else if (v == "center") {
+ v_align = CENTER;
+ } else if (v == "bottom") {
+ v_align = BOTTOM;
+ }
}
list<shared_ptr<Subtitle> >
Time in,
Time out,
float v_position,
+ VAlign v_align,
string text,
Effect effect,
Color effect_color
, _in (in)
, _out (out)
, _v_position (v_position)
+ , _v_align (v_align)
, _text (text)
, _effect (effect)
, _effect_color (effect_color)
BOOST_CHECK_EQUAL (s.front()->size_in_pixels(1080), 53);
BOOST_CHECK_EQUAL (s.front()->effect(), libdcp::BORDER);
BOOST_CHECK_EQUAL (s.front()->effect_color(), libdcp::Color(0, 0, 0));
+ BOOST_CHECK_EQUAL (s.front()->v_align(), libdcp::BOTTOM);
s = subs.subtitles_at (libdcp::Time (0, 0, 7, 190));
BOOST_CHECK_EQUAL (s.size(), 2);
BOOST_CHECK_EQUAL (s.front()->size_in_pixels(1080), 53);
BOOST_CHECK_EQUAL (s.front()->effect(), libdcp::BORDER);
BOOST_CHECK_EQUAL (s.front()->effect_color(), libdcp::Color(0, 0, 0));
+ BOOST_CHECK_EQUAL (s.front()->v_align(), libdcp::BOTTOM);
BOOST_CHECK_EQUAL (s.back()->text(), "My large wonderbra");
BOOST_CHECK_EQUAL (s.back()->v_position(), 15);
BOOST_CHECK_EQUAL (s.back()->in(), libdcp::Time (0, 0, 7, 177));
BOOST_CHECK_EQUAL (s.back()->size_in_pixels(1080), 53);
BOOST_CHECK_EQUAL (s.back()->effect(), libdcp::BORDER);
BOOST_CHECK_EQUAL (s.back()->effect_color(), libdcp::Color(0, 0, 0));
+ BOOST_CHECK_EQUAL (s.back()->v_align(), libdcp::BOTTOM);
s = subs.subtitles_at (libdcp::Time (0, 0, 11, 95));
BOOST_CHECK_EQUAL (s.size(), 1);
BOOST_CHECK_EQUAL (s.front()->size_in_pixels(1080), 53);
BOOST_CHECK_EQUAL (s.front()->effect(), libdcp::BORDER);
BOOST_CHECK_EQUAL (s.front()->effect_color(), libdcp::Color(0, 0, 0));
+ BOOST_CHECK_EQUAL (s.front()->v_align(), libdcp::BOTTOM);
s = subs.subtitles_at (libdcp::Time (0, 0, 14, 42));
BOOST_CHECK_EQUAL (s.size(), 1);
BOOST_CHECK_EQUAL (s.front()->size_in_pixels(1080), 53);
BOOST_CHECK_EQUAL (s.front()->effect(), libdcp::BORDER);
BOOST_CHECK_EQUAL (s.front()->effect_color(), libdcp::Color(0, 0, 0));
+ BOOST_CHECK_EQUAL (s.front()->v_align(), libdcp::BOTTOM);
}
BOOST_AUTO_TEST_CASE (dcp_time)