salgdi_gdiplus.cxx (5f27b83c) | salgdi_gdiplus.cxx (4aeb9d34) |
---|---|
1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 164 unchanged lines hidden (view full) --- 173 { 174 aGraphics.SetSmoothingMode(Gdiplus::SmoothingModeAntiAlias); 175 } 176 else 177 { 178 aGraphics.SetSmoothingMode(Gdiplus::SmoothingModeNone); 179 } 180 | 1/************************************************************** 2 * 3 * Licensed to the Apache Software Foundation (ASF) under one 4 * or more contributor license agreements. See the NOTICE file 5 * distributed with this work for additional information 6 * regarding copyright ownership. The ASF licenses this file 7 * to you under the Apache License, Version 2.0 (the 8 * "License"); you may not use this file except in compliance --- 164 unchanged lines hidden (view full) --- 173 { 174 aGraphics.SetSmoothingMode(Gdiplus::SmoothingModeAntiAlias); 175 } 176 else 177 { 178 aGraphics.SetSmoothingMode(Gdiplus::SmoothingModeNone); 179 } 180 |
181 if(mbPrinter) 182 { 183 // #121591# 184 // Normally GdiPlus should not be used for printing at all since printers cannot 185 // print transparent filled polygon geometry and normally this does not happen 186 // since OutputDevice::RemoveTransparenciesFromMetaFile is used as preparation 187 // and no transparent parts should remain for printing. But this can be overriden 188 // by the user and thus happens. This call can only come (currently) from 189 // OutputDevice::DrawTransparent, see comments sthere with the same TaskID. 190 // If it is used, the mapping for the printer is wrong and needs to be corrected. I 191 // checked that there is *no* transformation set (testcode commented out below) and 192 // estimated that a stable factor dependent of the printer's DPI is used. Create 193 // and set a transformation here to correct this 194 const Gdiplus::REAL aDpiX(aGraphics.GetDpiX()); 195 const Gdiplus::REAL aDpiY(aGraphics.GetDpiY()); 196 197 // test code to check the current transformation at the graphics device 198 //Gdiplus::Matrix matrix; 199 //aGraphics.GetTransform(&matrix); 200 //Gdiplus::REAL elements[6]; 201 //matrix.GetElements(elements); 202 203 Gdiplus::Matrix aPrinterTransform; 204 aPrinterTransform.Scale(Gdiplus::REAL(100.0) / aDpiX, Gdiplus::REAL(100.0) / aDpiY); 205 aGraphics.SetTransform(&aPrinterTransform); 206 } 207 |
|
181 aGraphics.FillPath(&aTestBrush, &aPath); 182 } 183 184 return true; 185} 186 187bool WinSalGraphics::drawPolyLine( 188 const basegfx::B2DPolygon& rPolygon, --- 296 unchanged lines hidden --- | 208 aGraphics.FillPath(&aTestBrush, &aPath); 209 } 210 211 return true; 212} 213 214bool WinSalGraphics::drawPolyLine( 215 const basegfx::B2DPolygon& rPolygon, --- 296 unchanged lines hidden --- |