diff options
Diffstat (limited to 'fpdfsdk')
-rw-r--r-- | fpdfsdk/include/fpdfview.h | 9 | ||||
-rw-r--r-- | fpdfsdk/src/fpdfview.cpp | 7 |
2 files changed, 11 insertions, 5 deletions
diff --git a/fpdfsdk/include/fpdfview.h b/fpdfsdk/include/fpdfview.h index f4f13750bc..a563762613 100644 --- a/fpdfsdk/include/fpdfview.h +++ b/fpdfsdk/include/fpdfview.h @@ -487,7 +487,11 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for // top - The top side position. Starting from 0 at the top-most scan line. // width - Number of pixels to be filled in each scan line. // height - Number of scan lines to be filled. -// color - A 32-bit value specifing the color, in 8888 ARGB format. +// red - A number from 0 to 255, identifying the red intensity. +// green - A number from 0 to 255, identifying the green intensity. +// blue - A number from 0 to 255, identifying the blue intensity. +// alpha - (Only if the alpha channeled is used when bitmap created) A number from 0 to 255, +// identifying the alpha value. // Return value: // None. // Comments: @@ -496,7 +500,8 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for // instead the background will be replaced by the source color and alpha. // If alpha channel is not used, the "alpha" parameter is ignored. // -DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, FPDF_DWORD color); +DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, + int red, int green, int blue, int alpha); // Function: FPDFBitmap_GetBuffer // Get data buffer of an FXDIB diff --git a/fpdfsdk/src/fpdfview.cpp b/fpdfsdk/src/fpdfview.cpp index a9aa9a8ff2..10eaf5d980 100644 --- a/fpdfsdk/src/fpdfview.cpp +++ b/fpdfsdk/src/fpdfview.cpp @@ -725,7 +725,8 @@ DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for return pBitmap; } -DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, FPDF_DWORD color) +DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top, int width, int height, + int red, int green, int blue, int alpha) { if (bitmap == NULL) return; #ifdef _SKIA_SUPPORT_ @@ -734,9 +735,9 @@ DLLEXPORT void STDCALL FPDFBitmap_FillRect(FPDF_BITMAP bitmap, int left, int top CFX_FxgeDevice device; #endif device.Attach((CFX_DIBitmap*)bitmap); - if (!((CFX_DIBitmap*)bitmap)->HasAlpha()) color |= 0xFF000000; + if (!((CFX_DIBitmap*)bitmap)->HasAlpha()) alpha = 255; FX_RECT rect(left, top, left+width, top+height); - device.FillRect(&rect, color); + device.FillRect(&rect, FXARGB_MAKE(alpha, red, green, blue)); } DLLEXPORT void* STDCALL FPDFBitmap_GetBuffer(FPDF_BITMAP bitmap) |