#2942 Escape SVG text labels

This commit is contained in:
Thomas Krijnen
2023-06-09 11:34:50 +02:00
parent f31132b24e
commit 01ad84901c
+8 -4
View File
@@ -1344,7 +1344,8 @@ void SvgSerializer::write(const geometry_data& data) {
labels.push_back(ss.str() + "m");
for (auto lit = labels.begin(); lit != labels.end(); ++lit) {
const auto& l = *lit;
auto l = *lit;
IfcUtil::escape_xml(l);
double dy = labels.begin() == lit
? 0.35 - (labels.size() - 1.) / 2.
: 1.0; // <- dy is relative to the previous text element, so
@@ -1512,7 +1513,8 @@ void SvgSerializer::write(const geometry_data& data) {
ycoords.push_back(path.add(anchor_pt->Y()));
path.add("\">");
for (auto lit = labels.begin(); lit != labels.end(); ++lit) {
const auto& l = *lit;
auto l = *lit;
IfcUtil::escape_xml(l);
double dy = labels.begin() == lit
? 0.35 - (labels.size() - 1.) / 2.
: 1.0; // <- dy is relative to the previous text element, so
@@ -1629,7 +1631,8 @@ void SvgSerializer::write(const geometry_data& data) {
}
path.add(">");
for (auto lit = labels.begin(); lit != labels.end(); ++lit) {
const auto& l = *lit;
auto l = *lit;
IfcUtil::escape_xml(l);
double dy = labels.begin() == lit
? 0.35 - (labels.size() - 1.) / 2.
: 1.0; // <- dy is relative to the previous text element, so
@@ -1967,7 +1970,8 @@ void SvgSerializer::addTextAnnotations(const drawing_key& k) {
std::vector<std::string> labels{ desc };
for (auto lit = labels.begin(); lit != labels.end(); ++lit) {
const auto& l = *lit;
auto l = *lit;
IfcUtil::escape_xml(l);
double dy = labels.begin() == lit
? 0.0 // align bottom
: 1.0; // <- dy is relative to the previous text element, so