summaryrefslogtreecommitdiff
path: root/core/src/fxge/win32/fx_win32_device.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'core/src/fxge/win32/fx_win32_device.cpp')
-rw-r--r--core/src/fxge/win32/fx_win32_device.cpp52
1 files changed, 23 insertions, 29 deletions
diff --git a/core/src/fxge/win32/fx_win32_device.cpp b/core/src/fxge/win32/fx_win32_device.cpp
index d82102462a..06e9777650 100644
--- a/core/src/fxge/win32/fx_win32_device.cpp
+++ b/core/src/fxge/win32/fx_win32_device.cpp
@@ -391,12 +391,10 @@ FX_BOOL CWin32FontInfo::GetFontCharset(void* hFont, int& charset)
charset = tm.tmCharSet;
return TRUE;
}
-#ifndef _FPDFAPI_MINI_
IFX_SystemFontInfo* IFX_SystemFontInfo::CreateDefault()
{
return FX_NEW CWin32FontInfo;
}
-#endif
void CFX_GEModule::InitPlatform()
{
CWin32Platform* pPlatformData = FX_NEW CWin32Platform;
@@ -571,29 +569,29 @@ FX_BOOL CGdiDeviceDriver::GDI_StretchBitMask(const CFX_DIBitmap* pBitmap1, int d
bmi.bmiColors[0] = 0xffffff;
bmi.bmiColors[1] = 0;
- HBRUSH hPattern = CreateSolidBrush(bitmap_color & 0xffffff);
- HBRUSH hOld = (HBRUSH)SelectObject(m_hDC, hPattern);
-
-
- // In PDF, when image mask is 1, use device bitmap; when mask is 0, use brush bitmap.
- // A complete list of the boolen operations is as follows:
-
- /* P(bitmap_color) S(ImageMask) D(DeviceBitmap) Result
- * 0 0 0 0
- * 0 0 1 0
- * 0 1 0 0
- * 0 1 1 1
- * 1 0 0 1
- * 1 0 1 1
- * 1 1 0 0
- * 1 1 1 1
- */
- // The boolen codes is B8. Based on http://msdn.microsoft.com/en-us/library/aa932106.aspx, the ROP3 code is 0xB8074A
-
- ::StretchDIBits(m_hDC, dest_left, dest_top, dest_width, dest_height,
- 0, 0, width, height, pBitmap->GetBuffer(), (BITMAPINFO*)&bmi, DIB_RGB_COLORS, 0xB8074A);
-
- SelectObject(m_hDC, hOld);
+ HBRUSH hPattern = CreateSolidBrush(bitmap_color & 0xffffff);
+ HBRUSH hOld = (HBRUSH)SelectObject(m_hDC, hPattern);
+
+
+ // In PDF, when image mask is 1, use device bitmap; when mask is 0, use brush bitmap.
+ // A complete list of the boolen operations is as follows:
+
+ /* P(bitmap_color) S(ImageMask) D(DeviceBitmap) Result
+ * 0 0 0 0
+ * 0 0 1 0
+ * 0 1 0 0
+ * 0 1 1 1
+ * 1 0 0 1
+ * 1 0 1 1
+ * 1 1 0 0
+ * 1 1 1 1
+ */
+ // The boolen codes is B8. Based on http://msdn.microsoft.com/en-us/library/aa932106.aspx, the ROP3 code is 0xB8074A
+
+ ::StretchDIBits(m_hDC, dest_left, dest_top, dest_width, dest_height,
+ 0, 0, width, height, pBitmap->GetBuffer(), (BITMAPINFO*)&bmi, DIB_RGB_COLORS, 0xB8074A);
+
+ SelectObject(m_hDC, hOld);
DeleteObject(hPattern);
return TRUE;
@@ -979,11 +977,9 @@ FX_BOOL CGdiDisplayDriver::GetDIBits(CFX_DIBitmap* pBitmap, int left, int top, v
ret = FALSE;
}
}
-#ifndef _FPDFAPI_MINI_
if (pBitmap->HasAlpha() && ret) {
pBitmap->LoadChannel(FXDIB_Alpha, 0xff);
}
-#endif
DeleteObject(hbmp);
DeleteObject(hDCMemory);
return ret;
@@ -1175,11 +1171,9 @@ IFX_RenderDeviceDriver* CFX_WindowsDevice::CreateDriver(HDC hDC, FX_BOOL bCmykOu
} else {
device_class = FXDC_DISPLAY;
}
-#ifndef _FPDFAPI_MINI_
if (device_class == FXDC_PRINTER) {
return FX_NEW CGdiPrinterDriver(hDC);
}
-#endif
return FX_NEW CGdiDisplayDriver(hDC);
}
CFX_WinBitmapDevice::CFX_WinBitmapDevice(int width, int height, FXDIB_Format format)