summaryrefslogtreecommitdiffstats
path: root/src/gui/text/qfontengine.cpp
diff options
context:
space:
mode:
authorRohan McGovern <rohan.mcgovern@nokia.com>2010-10-05 10:10:31 +1000
committerRohan McGovern <rohan.mcgovern@nokia.com>2010-10-05 10:10:31 +1000
commit7f94e6a6f48176a5b5cfd61c796a4fa2bcc63afb (patch)
treeb4741e78769d8af5eb97e0ce7337bb89db9e0ef1 /src/gui/text/qfontengine.cpp
parent68778d0d5c0eb9d85ac09e424bfabdd6ccce3b83 (diff)
parenta7bf1cfb1a75c35e837c01f4a5b0697fc8961148 (diff)
Merge remote branch 'origin/4.7' into master-from-4.7
Diffstat (limited to 'src/gui/text/qfontengine.cpp')
-rw-r--r--src/gui/text/qfontengine.cpp24
1 files changed, 18 insertions, 6 deletions
diff --git a/src/gui/text/qfontengine.cpp b/src/gui/text/qfontengine.cpp
index 70b7d65fab..be346e9975 100644
--- a/src/gui/text/qfontengine.cpp
+++ b/src/gui/text/qfontengine.cpp
@@ -46,7 +46,6 @@
#include "qpainter.h"
#include "qpainterpath.h"
#include "qvarlengtharray.h"
-#include <private/qpdf_p.h>
#include <qmath.h>
#include <qendian.h>
#include <private/qharfbuzz_p.h>
@@ -681,11 +680,7 @@ void QFontEngine::removeGlyphFromCache(glyph_t)
QFontEngine::Properties QFontEngine::properties() const
{
Properties p;
-#ifndef QT_NO_PRINTER
- QByteArray psname = QPdf::stripSpecialCharacters(fontDef.family.toUtf8());
-#else
- QByteArray psname = fontDef.family.toUtf8();
-#endif
+ QByteArray psname = QFontEngine::convertToPostscriptFontFamilyName(fontDef.family.toUtf8());
psname += '-';
psname += QByteArray::number(fontDef.style);
psname += '-';
@@ -1097,6 +1092,23 @@ quint32 QFontEngine::getTrueTypeGlyphIndex(const uchar *cmap, uint unicode)
return 0;
}
+QByteArray QFontEngine::convertToPostscriptFontFamilyName(const QByteArray &family)
+{
+ QByteArray f = family;
+ f.replace(' ', "");
+ f.replace('(', "");
+ f.replace(')', "");
+ f.replace('<', "");
+ f.replace('>', "");
+ f.replace('[', "");
+ f.replace(']', "");
+ f.replace('{', "");
+ f.replace('}', "");
+ f.replace('/', "");
+ f.replace('%', "");
+ return f;
+}
+
Q_GLOBAL_STATIC_WITH_INITIALIZER(QVector<QRgb>, qt_grayPalette, {
x->resize(256);
QRgb *it = x->data();