+ BOOST_CHECK_EQUAL (marked_up(s, 1024, 1, ""), "<span style=\"italic\" size=\"41705\" alpha=\"65535\" color=\"#FFFFFF\">Hello</span><span size=\"41705\" alpha=\"65535\" color=\"#FFFFFF\"> world </span><span weight=\"bold\" size=\"41705\" alpha=\"65535\" color=\"#FFFFFF\">we are bold.</span>");
+}
+
+
+BOOST_AUTO_TEST_CASE(render_text_with_newline_test)
+{
+ std::list<dcp::SubtitleString> ss = {
+ {
+ {}, true, false, false, dcp::Colour(255, 255, 255), 42, 1.0,
+ dcp::Time(0, 0, 0, 0, 24), dcp::Time(0, 0, 1, 0, 24),
+ 0.5, dcp::HAlign::CENTER,
+ 0.5, dcp::VAlign::CENTER,
+ 0.0,
+ dcp::Direction::LTR,
+ "Hello world",
+ dcp::Effect::NONE, dcp::Colour(0, 0, 0),
+ {}, {},
+ 0,
+ std::vector<dcp::Ruby>()
+ },
+ {
+ {}, true, false, false, dcp::Colour(255, 255, 255), 42, 1.0,
+ dcp::Time(0, 0, 0, 0, 24), dcp::Time(0, 0, 1, 0, 24),
+ 0.5, dcp::HAlign::CENTER,
+ 0.5, dcp::VAlign::CENTER,
+ 0.0,
+ dcp::Direction::LTR,
+ "\n",
+ dcp::Effect::NONE, dcp::Colour(0, 0, 0),
+ {}, {},
+ 0,
+ std::vector<dcp::Ruby>()
+ }
+ };
+
+ std::vector<StringText> st;
+ for (auto i: ss) {
+ st.push_back({i, 0, make_shared<dcpomatic::Font>("foo"), dcp::SubtitleStandard::SMPTE_2014});
+ }
+
+ auto images = render_text(st, dcp::Size(1998, 1080), {}, 24);
+
+ BOOST_CHECK_EQUAL(images.size(), 1U);
+ image_as_png(Image::ensure_alignment(images.front().image, Image::Alignment::PADDED)).write("build/test/render_text_with_newline_test.png");
+#if defined(DCPOMATIC_OSX)
+ check_image("test/data/mac/render_text_with_newline_test.png", "build/test/render_text_with_newline_test.png");
+#elif defined(DCPOMATIC_WINDOWS)
+ check_image("test/data/windows/render_text_with_newline_test.png", "build/test/render_text_with_newline_test.png");
+#else
+ check_image("test/data/render_text_with_newline_test.png", "build/test/render_text_with_newline_test.png");
+#endif