Set the page origin to the left/top point of the printable rectangle (was page rectangle).

git-svn-id: file:///srv/svn/repos/haiku/trunk/current@9275 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Michael Pfeiffer
2004-10-10 15:44:51 +00:00
parent fecfb1dcff
commit 05ab7b5c32
+5 -1
View File
@@ -19,6 +19,7 @@
#include "ValidRect.h"
#include "DbgMsg.h"
#if (!__MWERKS__ || defined(MSIPL_USING_NAMESPACE))
using namespace std;
#else
@@ -67,8 +68,11 @@ bool PSDriver::endPage(int)
}
void PSDriver::setupCTM() {
const float leftMargin = getJobData()->getPrintableRect().left;
const float topMargin = getJobData()->getPrintableRect().top;
// move origin from bottom left to top left
writeSpoolString("0 %f translate\n", getJobData()->getPaperRect().Height());
// and set margin
writeSpoolString("%f %f translate\n", leftMargin, getJobData()->getPaperRect().Height()-topMargin);
// y values increase from top to bottom
// units of measure is dpi
writeSpoolString("72 %d div 72 -%d div scale\n", getJobData()->getXres(), getJobData()->getYres());