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 "../include/fsdk_define.h" | 7 #include "../include/fsdk_define.h" |
8 #include "../include/fsdk_mgr.h" | 8 #include "../include/fsdk_mgr.h" |
9 #include "../include/fpdfview.h" | 9 #include "../include/fpdfview.h" |
10 #include "../include/fsdk_rendercontext.h" | 10 #include "../include/fsdk_rendercontext.h" |
11 #include "../include/fpdf_progressive.h" | 11 #include "../include/fpdf_progressive.h" |
12 #include "../include/fpdf_ext.h" | 12 #include "../include/fpdf_ext.h" |
13 #include "../../../core/src/fxcrt/fx_safe_types.h" | 13 #include "../../../core/src/fxcrt/fx_safe_types.h" |
| 14 #include "../../third_party/base/nonstd_unique_ptr.h" |
14 #include "../../third_party/base/numerics/safe_conversions_impl.h" | 15 #include "../../third_party/base/numerics/safe_conversions_impl.h" |
15 #include "../include/fpdfformfill.h" | 16 #include "../include/fpdfformfill.h" |
16 #include "../include/fpdfxfa/fpdfxfa_doc.h" | 17 #include "../include/fpdfxfa/fpdfxfa_doc.h" |
17 #include "../include/fpdfxfa/fpdfxfa_app.h" | 18 #include "../include/fpdfxfa/fpdfxfa_app.h" |
18 #include "../include/fpdfxfa/fpdfxfa_page.h" | 19 #include "../include/fpdfxfa/fpdfxfa_page.h" |
19 #include "../include/fpdfxfa/fpdfxfa_util.h" | 20 #include "../include/fpdfxfa/fpdfxfa_util.h" |
20 | 21 |
21 CFPDF_FileStream::CFPDF_FileStream(FPDF_FILEHANDLER* pFS) | 22 CFPDF_FileStream::CFPDF_FileStream(FPDF_FILEHANDLER* pFS) |
22 { | 23 { |
23 m_pFS = pFS; | 24 m_pFS = pFS; |
(...skipping 679 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
703 DLLEXPORT void STDCALL FPDF_PageToDevice(FPDF_PAGE page, int start_x, int start_
y, int size_x, int size_y, | 704 DLLEXPORT void STDCALL FPDF_PageToDevice(FPDF_PAGE page, int start_x, int start_
y, int size_x, int size_y, |
704 int rotate, double page_x, doubl
e page_y, int* device_x, int* device_y) | 705 int rotate, double page_x, doubl
e page_y, int* device_x, int* device_y) |
705 { | 706 { |
706 if (page == NULL || device_x == NULL || device_y == NULL) return; | 707 if (page == NULL || device_x == NULL || device_y == NULL) return; |
707 CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; | 708 CPDFXFA_Page* pPage = (CPDFXFA_Page*)page; |
708 pPage->PageToDevice(start_x, start_y, size_x, size_y, rotate, page_x, pa
ge_y, device_x, device_y); | 709 pPage->PageToDevice(start_x, start_y, size_x, size_y, rotate, page_x, pa
ge_y, device_x, device_y); |
709 } | 710 } |
710 | 711 |
711 DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_Create(int width, int height, int alpha
) | 712 DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_Create(int width, int height, int alpha
) |
712 { | 713 { |
713 » CFX_DIBitmap* pBitmap = FX_NEW CFX_DIBitmap; | 714 nonstd::unique_ptr<CFX_DIBitmap> pBitmap(new CFX_DIBitmap); |
714 » pBitmap->Create(width, height, alpha ? FXDIB_Argb : FXDIB_Rgb32); | 715 if (!pBitmap->Create(width, height, alpha ? FXDIB_Argb : FXDIB_Rgb32)) { |
715 » return pBitmap; | 716 return NULL; |
| 717 } |
| 718 return pBitmap.release(); |
716 } | 719 } |
717 | 720 |
718 DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for
mat, void* first_scan, int stride) | 721 DLLEXPORT FPDF_BITMAP STDCALL FPDFBitmap_CreateEx(int width, int height, int for
mat, void* first_scan, int stride) |
719 { | 722 { |
720 FXDIB_Format fx_format; | 723 FXDIB_Format fx_format; |
721 switch (format) { | 724 switch (format) { |
722 case FPDFBitmap_Gray: | 725 case FPDFBitmap_Gray: |
723 fx_format = FXDIB_8bppRgb; | 726 fx_format = FXDIB_8bppRgb; |
724 break; | 727 break; |
725 case FPDFBitmap_BGR: | 728 case FPDFBitmap_BGR: |
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1050 if (!buffer) { | 1053 if (!buffer) { |
1051 buflen = len; | 1054 buflen = len; |
1052 } else if (buflen >= len) { | 1055 } else if (buflen >= len) { |
1053 memcpy(buffer, utf16Name.c_str(), len); | 1056 memcpy(buffer, utf16Name.c_str(), len); |
1054 buflen = len; | 1057 buflen = len; |
1055 } else { | 1058 } else { |
1056 buflen = -1; | 1059 buflen = -1; |
1057 } | 1060 } |
1058 return (FPDF_DEST)pDestObj; | 1061 return (FPDF_DEST)pDestObj; |
1059 } | 1062 } |
OLD | NEW |