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 <limits.h> | 7 #include <limits.h> |
8 | 8 |
9 #include <algorithm> | 9 #include <algorithm> |
10 | 10 |
11 #include "core/fxge/dib/dib_int.h" | 11 #include "core/fxge/dib/dib_int.h" |
12 #include "core/fxge/include/fx_dib.h" | 12 #include "core/fxge/fx_dib.h" |
13 | 13 |
14 namespace { | 14 namespace { |
15 | 15 |
16 bool SourceSizeWithinLimit(int width, int height) { | 16 bool SourceSizeWithinLimit(int width, int height) { |
17 const int kMaxProgressiveStretchPixels = 1000000; | 17 const int kMaxProgressiveStretchPixels = 1000000; |
18 return !height || width < kMaxProgressiveStretchPixels / height; | 18 return !height || width < kMaxProgressiveStretchPixels / height; |
19 } | 19 } |
20 | 20 |
21 FXDIB_Format GetStretchedFormat(const CFX_DIBSource& src) { | 21 FXDIB_Format GetStretchedFormat(const CFX_DIBSource& src) { |
22 FXDIB_Format format = src.GetFormat(); | 22 FXDIB_Format format = src.GetFormat(); |
(...skipping 975 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
998 result_width); | 998 result_width); |
999 if (m_pMaskScanline) { | 999 if (m_pMaskScanline) { |
1000 m_pSource->m_pAlphaMask->DownSampleScanline( | 1000 m_pSource->m_pAlphaMask->DownSampleScanline( |
1001 src_y, m_pMaskScanline.get(), 1, m_DestWidth, m_bFlipX, | 1001 src_y, m_pMaskScanline.get(), 1, m_DestWidth, m_bFlipX, |
1002 m_ClipRect.left, result_width); | 1002 m_ClipRect.left, result_width); |
1003 } | 1003 } |
1004 m_pDest->ComposeScanline(dest_y, m_pScanline.get(), m_pMaskScanline.get()); | 1004 m_pDest->ComposeScanline(dest_y, m_pScanline.get(), m_pMaskScanline.get()); |
1005 } | 1005 } |
1006 return FALSE; | 1006 return FALSE; |
1007 } | 1007 } |
OLD | NEW |