OLD | NEW |
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 Loading... |
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 Loading... |
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 } |
OLD | NEW |