diff --git a/src/extension/internal/emf-win32-print.cpp b/src/extension/internal/emf-win32-print.cpp
index 4da7819ee0042319c82292135a94aaf008db6538..c7f8e3d4cb93f66207638057385d990ba09282aa 100644 (file)
*/
/* Authors:
* Ulf Erikson <ulferikson@users.sf.net>
+ * Jon A. Cruz <jon@joncruz.org>
+ * Abhishek Sharma
*
- * Copyright (C) 2006-2008 Authors
+ * Copyright (C) 2006-2009 Authors
*
* Released under GNU GPL, read the file 'COPYING' for more information
*/
//#include <signal.h>
//#include <errno.h>
-//#include "libnr/nr-point-matrix-ops.h"
-//#include "libnr/nr-rect.h"
-//#include "libnr/nr-matrix.h"
-#include "libnr/nr-matrix-ops.h"
-//#include "libnr/nr-matrix-scale-ops.h"
-//#include "libnr/nr-matrix-translate-ops.h"
-#include "libnr/nr-scale-translate-ops.h"
-//#include "libnr/nr-translate-scale-ops.h"
-//#include "libnr/nr-matrix-fns.h"
-//#include "libnr/nr-pixblock.h"
#include <2geom/pathvector.h>
#include <2geom/rect.h>
#include <2geom/bezier-curve.h>
//#include "document.h"
#include "style.h"
//#include "sp-paint-server.h"
-#include "inkscape_version.h"
+#include "inkscape-version.h"
//#include "libnrtype/FontFactory.h"
//#include "libnrtype/font-instance.h"
WCHAR *unicode_uri = (WCHAR *) unicode_fn;
// width and height in px
- _width = sp_document_width(doc);
- _height = sp_document_height(doc);
+ _width = doc->getWidth();
+ _height = doc->getHeight();
NRRect d;
bool pageBoundingBox;
d.x1 = _width;
d.y1 = _height;
} else {
- SPItem* doc_item = SP_ITEM(sp_document_root(doc));
- sp_item_invoke_bbox(doc_item, &d, sp_item_i2d_affine(doc_item), TRUE);
+ SPItem* doc_item = SP_ITEM(doc->getRoot());
+ doc_item->invoke_bbox(&d, doc_item->i2d_affine(), TRUE);
}
d.x0 *= IN_PER_PX;
CHAR buff[1024];
ZeroMemory(buff, sizeof(buff));
- snprintf(buff, sizeof(buff)-1, "Inkscape %s (%s)", INKSCAPE_VERSION, __DATE__);
+ snprintf(buff, sizeof(buff)-1, "Inkscape %s (%s)", Inkscape::version_string, __DATE__);
INT len = strlen(buff);
CHAR *p1 = strrchr(ansi_uri, '\\');
CHAR *p2 = strrchr(ansi_uri, '/');
g_free(local_fn);
g_free(unicode_fn);
- m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, sp_document_height(doc)));
+ m_tr_stack.push( Geom::Scale(1, -1) * Geom::Translate(0, doc->getHeight()));
return 0;
}
@@ -684,36 +676,32 @@ PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom::Mat
bool done = false;
bool closed = (lpPoints[0].x == lpPoints[i-1].x) && (lpPoints[0].y == lpPoints[i-1].y);
bool polygon = false;
- bool polyline = false;
bool rectangle = false;
bool ellipse = false;
if (moves == 1 && moves+lines == nodes && closed) {
polygon = true;
- if (nodes==5) {
- if (lpPoints[0].x == lpPoints[3].x && lpPoints[1].x == lpPoints[2].x &&
- lpPoints[0].y == lpPoints[1].y && lpPoints[2].y == lpPoints[3].y)
- {
- rectangle = true;
- }
- }
- }
- else if (moves == 1 && moves+lines == nodes) {
- polyline = true;
+// if (nodes==5) { // disable due to LP Bug 407394
+// if (lpPoints[0].x == lpPoints[3].x && lpPoints[1].x == lpPoints[2].x &&
+// lpPoints[0].y == lpPoints[1].y && lpPoints[2].y == lpPoints[3].y)
+// {
+// rectangle = true;
+// }
+// }
}
else if (moves == 1 && nodes == 5 && moves+curves == nodes && closed) {
- if (lpPoints[0].x == lpPoints[1].x && lpPoints[1].x == lpPoints[11].x &&
- lpPoints[5].x == lpPoints[6].x && lpPoints[6].x == lpPoints[7].x &&
- lpPoints[2].x == lpPoints[10].x && lpPoints[3].x == lpPoints[9].x && lpPoints[4].x == lpPoints[8].x &&
- lpPoints[2].y == lpPoints[3].y && lpPoints[3].y == lpPoints[4].y &&
- lpPoints[8].y == lpPoints[9].y && lpPoints[9].y == lpPoints[10].y &&
- lpPoints[5].y == lpPoints[1].y && lpPoints[6].y == lpPoints[0].y && lpPoints[7].y == lpPoints[11].y)
- {
- ellipse = true;
- }
+// if (lpPoints[0].x == lpPoints[1].x && lpPoints[1].x == lpPoints[11].x &&
+// lpPoints[5].x == lpPoints[6].x && lpPoints[6].x == lpPoints[7].x &&
+// lpPoints[2].x == lpPoints[10].x && lpPoints[3].x == lpPoints[9].x && lpPoints[4].x == lpPoints[8].x &&
+// lpPoints[2].y == lpPoints[3].y && lpPoints[3].y == lpPoints[4].y &&
+// lpPoints[8].y == lpPoints[9].y && lpPoints[9].y == lpPoints[10].y &&
+// lpPoints[5].y == lpPoints[1].y && lpPoints[6].y == lpPoints[0].y && lpPoints[7].y == lpPoints[11].y)
+// { // disable due to LP Bug 407394
+// ellipse = true;
+// }
}
- if (polygon || polyline || ellipse) {
+ if (polygon || ellipse) {
HPEN hpenTmp = NULL;
HPEN hpenOld = NULL;
HBRUSH hbrushTmp = NULL;
@@ -736,9 +724,6 @@ PrintEmfWin32::print_simple_shape(Geom::PathVector const &pathv, const Geom::Mat
else
Polygon( hdc, lpPoints, nodes );
}
- else if (polyline) {
- Polyline( hdc, lpPoints, nodes );
- }
else if (ellipse) {
Ellipse( hdc, lpPoints[6].x, lpPoints[3].y, lpPoints[0].x, lpPoints[9].y);
}
fill-column:99
End:
*/
-// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:encoding=utf-8:textwidth=99 :
+// vim: filetype=cpp:expandtab:shiftwidth=4:tabstop=8:softtabstop=4:fileencoding=utf-8:textwidth=99 :