SVG File generieren
Verfasst: 14. November 2007 16:05
Hallo,
ich habe eine Funktion geschrieben, die mir aus einer Liste von Polygonen ein SVG File generieren soll. Aber ich bekomme bei der besagten Methode einen Linkerfehler. Vielleicht kann mir jemand bei der Lösung des Problems helfen.
Hier mal den Code der Methode:
void SvgGenerator::generateSvg(QList<QPolygonF> mWords)
{
QString fileName = "svgFile.svg";
SvgGenerator::svgGen->setFileName(fileName);
QPolygonF p = mWords.takeFirst();
QPainter *m_painter = new QPainter();
m_painter->begin(svgGen);
int i = 0;
while(i != mWords.size()-1)
{
p = mWords.takeAt(i);
m_painter->drawPolygon(p);
++i;
}
m_painter->end();
}
Folgende Klassen, die benötigt werden, habe ich dazu inculdiert:
#include <QtSvg/QSvgGenerator>
#include <QtCore/QList>
#include <QtGui/QPolygonF>
#include <QtCore/QString>
#include <QtGui/QPainter>
Und ich erhalte folgenden Fehler:
error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall QSvgGenerator::setFileName(class QString const &)" (__imp_?setFileName@QSvgGenerator@@QAEXABVQString@@@Z) referenced in function "public: void __thiscall SvgGenerator::generateSvg(class QList<class QPolygonF>)" (?generateSvg@SvgGenerator@@QAEXV?$QList@VQPolygonF@@@@@Z)
Soweit wie ich nach meinen Recherchen verstanden habe, entsteht ein solcher Linkerfehler, wenn eine Bibliothek nicht includiert ist. Aber meines Erachtens nach habe ich alle benötigten Klassen includiert.
ich habe eine Funktion geschrieben, die mir aus einer Liste von Polygonen ein SVG File generieren soll. Aber ich bekomme bei der besagten Methode einen Linkerfehler. Vielleicht kann mir jemand bei der Lösung des Problems helfen.
Hier mal den Code der Methode:
void SvgGenerator::generateSvg(QList<QPolygonF> mWords)
{
QString fileName = "svgFile.svg";
SvgGenerator::svgGen->setFileName(fileName);
QPolygonF p = mWords.takeFirst();
QPainter *m_painter = new QPainter();
m_painter->begin(svgGen);
int i = 0;
while(i != mWords.size()-1)
{
p = mWords.takeAt(i);
m_painter->drawPolygon(p);
++i;
}
m_painter->end();
}
Folgende Klassen, die benötigt werden, habe ich dazu inculdiert:
#include <QtSvg/QSvgGenerator>
#include <QtCore/QList>
#include <QtGui/QPolygonF>
#include <QtCore/QString>
#include <QtGui/QPainter>
Und ich erhalte folgenden Fehler:
error LNK2019: unresolved external symbol "__declspec(dllimport) public: void __thiscall QSvgGenerator::setFileName(class QString const &)" (__imp_?setFileName@QSvgGenerator@@QAEXABVQString@@@Z) referenced in function "public: void __thiscall SvgGenerator::generateSvg(class QList<class QPolygonF>)" (?generateSvg@SvgGenerator@@QAEXV?$QList@VQPolygonF@@@@@Z)
Soweit wie ich nach meinen Recherchen verstanden habe, entsteht ein solcher Linkerfehler, wenn eine Bibliothek nicht includiert ist. Aber meines Erachtens nach habe ich alle benötigten Klassen includiert.