Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(821)

Side by Side Diff: core/src/fpdfapi/fpdf_render/fpdf_render_pattern.cpp

Issue 1783933002: Change colorspace's number of components to be unsigned (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@master
Patch Set: address comments Created 4 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 PDFium Authors. All rights reserved. 1 // Copyright 2014 PDFium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com 5 // Original code copyright 2014 Foxit Software Inc. http://www.foxitsoftware.com
6 6
7 #include "core/src/fpdfapi/fpdf_render/render_int.h" 7 #include "core/src/fpdfapi/fpdf_render/render_int.h"
8 8
9 #include "core/include/fpdfapi/fpdf_pageobj.h" 9 #include "core/include/fpdfapi/fpdf_pageobj.h"
10 #include "core/include/fpdfapi/fpdf_render.h" 10 #include "core/include/fpdfapi/fpdf_render.h"
(...skipping 814 matching lines...) Expand 10 before | Expand all | Expand 10 after
825 CPDF_ColorSpace* pColorSpace = pPattern->m_pCS; 825 CPDF_ColorSpace* pColorSpace = pPattern->m_pCS;
826 if (!pColorSpace) { 826 if (!pColorSpace) {
827 return; 827 return;
828 } 828 }
829 FX_ARGB background = 0; 829 FX_ARGB background = 0;
830 if (!pPattern->m_bShadingObj && 830 if (!pPattern->m_bShadingObj &&
831 pPattern->m_pShadingObj->GetDict()->KeyExist("Background")) { 831 pPattern->m_pShadingObj->GetDict()->KeyExist("Background")) {
832 CPDF_Array* pBackColor = 832 CPDF_Array* pBackColor =
833 pPattern->m_pShadingObj->GetDict()->GetArrayBy("Background"); 833 pPattern->m_pShadingObj->GetDict()->GetArrayBy("Background");
834 if (pBackColor && 834 if (pBackColor &&
835 pBackColor->GetCount() >= (FX_DWORD)pColorSpace->CountComponents()) { 835 pBackColor->GetCount() >= pColorSpace->CountComponents()) {
836 CFX_FixedBufGrow<FX_FLOAT, 16> comps(pColorSpace->CountComponents()); 836 CFX_FixedBufGrow<FX_FLOAT, 16> comps(pColorSpace->CountComponents());
837 for (int i = 0; i < pColorSpace->CountComponents(); i++) { 837 for (int i = 0; i < pColorSpace->CountComponents(); i++) {
838 comps[i] = pBackColor->GetNumberAt(i); 838 comps[i] = pBackColor->GetNumberAt(i);
839 } 839 }
840 FX_FLOAT R = 0.0f, G = 0.0f, B = 0.0f; 840 FX_FLOAT R = 0.0f, G = 0.0f, B = 0.0f;
841 pColorSpace->GetRGB(comps, R, G, B); 841 pColorSpace->GetRGB(comps, R, G, B);
842 background = ArgbEncode(255, (int32_t)(R * 255), (int32_t)(G * 255), 842 background = ArgbEncode(255, (int32_t)(R * 255), (int32_t)(G * 255),
843 (int32_t)(B * 255)); 843 (int32_t)(B * 255));
844 } 844 }
845 } 845 }
(...skipping 350 matching lines...) Expand 10 before | Expand all | Expand 10 after
1196 } 1196 }
1197 } 1197 }
1198 if (bStroke) { 1198 if (bStroke) {
1199 CPDF_Color& StrokeColor = *pPathObj->m_ColorState.GetStrokeColor(); 1199 CPDF_Color& StrokeColor = *pPathObj->m_ColorState.GetStrokeColor();
1200 if (StrokeColor.m_pCS && StrokeColor.m_pCS->GetFamily() == PDFCS_PATTERN) { 1200 if (StrokeColor.m_pCS && StrokeColor.m_pCS->GetFamily() == PDFCS_PATTERN) {
1201 DrawPathWithPattern(pPathObj, pObj2Device, &StrokeColor, TRUE); 1201 DrawPathWithPattern(pPathObj, pObj2Device, &StrokeColor, TRUE);
1202 bStroke = FALSE; 1202 bStroke = FALSE;
1203 } 1203 }
1204 } 1204 }
1205 } 1205 }
OLDNEW
« no previous file with comments | « core/src/fpdfapi/fpdf_render/fpdf_render_loadimage.cpp ('k') | core/src/fxcodec/codec/codec_int.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698