Subject: [calligra/filters-karbon-cdr] filters/karbon/cdr: Added: initial support for multi-line graphic text
Git commit fb0de13534e0c9465570b69efe12346b07fb4799 by Friedrich W. H. Kossebau.
Committed on 22/02/2012 at 13:54.
Pushed by kossebau into branch 'filters-karbon-cdr'.

Added: initial support for multi-line graphic text

M +15 -6 filters/karbon/cdr/cdrodgwriter.cpp

http://commits.kde.org/calligra/fb0de13534e0c9465570b69efe12346b07fb4799

diff --git a/filters/karbon/cdr/cdrodgwriter.cpp
b/filters/karbon/cdr/cdrodgwriter.cpp
index 66b4cf9..47ed13ce 100644
--- a/filters/karbon/cdr/cdrodgwriter.cpp
+++ b/filters/karbon/cdr/cdrodgwriter.cpp
@@ -191,9 +191,9 @@ CdrOdgWriter::writeGraphicTextSvg( QIODevice* device, const
CdrGraphicTextObject

"\"http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd\";>") << endl;

svgStream << QLatin1String("<svg xmlns=\"http://www.w3.org/2000/svg\"; "
- "xmlns:xlink=\"http://www.w3.org/1999/xlink\"";
- " width=\"") << /*textObject->width()*/10 <<
QLatin1String("pt\""
- " height=\"") << /*textObject->height()*/10 <<
QLatin1String("pt\">") << endl;
+ "xmlns:xlink=\"http://www.w3.org/1999/xlink\";>"
+ /*" width=\"") << textObject->width() <<
QLatin1String("pt\""
+ " height=\"") << textObject->height() <<
QLatin1String("pt\">"*/) << endl;

svgStream << QLatin1String("<text transform=\"scale(1 -1)\"");

@@ -229,10 +229,19 @@ CdrOdgWriter::writeGraphicTextSvg( QIODevice* device,
const CdrGraphicTextObject
svgStream << QLatin1String(" text-anchor=\"") << anchor <<
QLatin1Char('\"');
}
}
- svgStream << QLatin1String("><tspan>")<<Qt::escape(textObject->text()) <<
QLatin1String("</tspan></text>");
+ svgStream << QLatin1Char('>') << endl;

- // end tag:
- svgStream << endl << QLatin1String("</svg>") << endl;
+ const QStringList textLines = textObject->text().split(
QLatin1String("\x0D\x0A") );
+ double y = 0.0;
+ for( int i = 0; i < textLines.count(); ++i )
+ {
+ svgStream << QLatin1String("<tspan x=\"0pt\" y=\"") <<
QString::number(y) << ("pt\">")
+ << Qt::escape(textLines.at(i)) << QLatin1String("</tspan>")
<< endl;
+
+ y += odfLength( fontSize );
+ }
+
+ svgStream << endl << QLatin1String("</text></svg>") << endl;
}

void

(C)2011 mailinglist-archive.com