fix overlapping text

This commit is contained in:
Jaydeep Solanki 2013-10-22 20:21:30 +05:30 committed by Albert Astals Cid
parent ed0d146457
commit 9b673d04f1
2 changed files with 16 additions and 0 deletions

View file

@ -9,6 +9,8 @@
#include "epubdocument.h"
#include <QRegExp>
using namespace Epub;
namespace {
@ -64,6 +66,12 @@ int EpubDocument::maxContentWidth() const
return pageSize().width() - (2 * padding);
}
void EpubDocument::checkCSS(QString &css)
{
// remove paragraph line-heights
css.remove(QRegExp("line-height\\s*:\\s*[\\w\\.]*;"));
}
QVariant EpubDocument::loadResource(int type, const QUrl &name)
{
int size;
@ -80,6 +88,12 @@ QVariant EpubDocument::loadResource(int type, const QUrl &name)
resource.setValue(QImage::fromData((unsigned char *)data, size));
break;
case QTextDocument::StyleSheetResource: {
QString css = QString::fromUtf8(data);
checkCSS(css);
resource.setValue(css);
break;
}
default:
resource.setValue(QString::fromUtf8(data));
break;

View file

@ -34,6 +34,8 @@ namespace Epub {
virtual QVariant loadResource(int type, const QUrl &name);
private:
void checkCSS(QString &css);
struct epub *mEpub;
KUrl mCurrentSubDocument;