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

Side by Side Diff: fpdfsdk/src/fpdf_flatten.cpp

Issue 1577503002: Merge to XFA: Switch most min/max macros to std::min/max. (Closed) Base URL: https://pdfium.googlesource.com/pdfium.git@xfa
Patch Set: rebase Created 4 years, 11 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
« no previous file with comments | « fpdfsdk/include/fxedit/fxet_edit.h ('k') | fpdfsdk/src/fsdk_baseannot.cpp » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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 "public/fpdf_flatten.h" 7 #include "public/fpdf_flatten.h"
8 8
9 #include <algorithm>
10
9 #include "fpdfsdk/include/fsdk_define.h" 11 #include "fpdfsdk/include/fsdk_define.h"
10 12
11 typedef CFX_ArrayTemplate<CPDF_Dictionary*> CPDF_ObjectArray; 13 typedef CFX_ArrayTemplate<CPDF_Dictionary*> CPDF_ObjectArray;
12 typedef CFX_ArrayTemplate<CPDF_Rect> CPDF_RectArray; 14 typedef CFX_ArrayTemplate<CPDF_Rect> CPDF_RectArray;
13 15
14 enum FPDF_TYPE { MAX, MIN }; 16 enum FPDF_TYPE { MAX, MIN };
15 enum FPDF_VALUE { TOP, LEFT, RIGHT, BOTTOM }; 17 enum FPDF_VALUE { TOP, LEFT, RIGHT, BOTTOM };
16 18
17 FX_BOOL IsValiableRect(CPDF_Rect rect, CPDF_Rect rcPage) { 19 FX_BOOL IsValiableRect(CPDF_Rect rect, CPDF_Rect rcPage) {
18 if (rect.left - rect.right > 0.000001f || rect.bottom - rect.top > 0.000001f) 20 if (rect.left - rect.right > 0.000001f || rect.bottom - rect.top > 0.000001f)
(...skipping 274 matching lines...) Expand 10 before | Expand all | Expand 10 after
293 matrix.b * rcStream.left + matrix.d * rcStream.bottom + matrix.f; 295 matrix.b * rcStream.left + matrix.d * rcStream.bottom + matrix.f;
294 FX_FLOAT x2 = matrix.a * rcStream.left + matrix.c * rcStream.top + matrix.e; 296 FX_FLOAT x2 = matrix.a * rcStream.left + matrix.c * rcStream.top + matrix.e;
295 FX_FLOAT y2 = matrix.b * rcStream.left + matrix.d * rcStream.top + matrix.f; 297 FX_FLOAT y2 = matrix.b * rcStream.left + matrix.d * rcStream.top + matrix.f;
296 FX_FLOAT x3 = 298 FX_FLOAT x3 =
297 matrix.a * rcStream.right + matrix.c * rcStream.bottom + matrix.e; 299 matrix.a * rcStream.right + matrix.c * rcStream.bottom + matrix.e;
298 FX_FLOAT y3 = 300 FX_FLOAT y3 =
299 matrix.b * rcStream.right + matrix.d * rcStream.bottom + matrix.f; 301 matrix.b * rcStream.right + matrix.d * rcStream.bottom + matrix.f;
300 FX_FLOAT x4 = matrix.a * rcStream.right + matrix.c * rcStream.top + matrix.e; 302 FX_FLOAT x4 = matrix.a * rcStream.right + matrix.c * rcStream.top + matrix.e;
301 FX_FLOAT y4 = matrix.b * rcStream.right + matrix.d * rcStream.top + matrix.f; 303 FX_FLOAT y4 = matrix.b * rcStream.right + matrix.d * rcStream.top + matrix.f;
302 304
303 FX_FLOAT left = FX_MIN(FX_MIN(x1, x2), FX_MIN(x3, x4)); 305 FX_FLOAT left = std::min(std::min(x1, x2), std::min(x3, x4));
304 FX_FLOAT bottom = FX_MIN(FX_MIN(y1, y2), FX_MIN(y3, y4)); 306 FX_FLOAT bottom = std::min(std::min(y1, y2), std::min(y3, y4));
305 307
306 fa = (rcAnnot.right - rcAnnot.left) / fStreamWidth; 308 fa = (rcAnnot.right - rcAnnot.left) / fStreamWidth;
307 fd = (rcAnnot.top - rcAnnot.bottom) / fStreamHeight; 309 fd = (rcAnnot.top - rcAnnot.bottom) / fStreamHeight;
308 fe = rcAnnot.left - left * fa; 310 fe = rcAnnot.left - left * fa;
309 ff = rcAnnot.bottom - bottom * fd; 311 ff = rcAnnot.bottom - bottom * fd;
310 } 312 }
311 313
312 DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) { 314 DLLEXPORT int STDCALL FPDFPage_Flatten(FPDF_PAGE page, int nFlag) {
313 CPDF_Page* pPage = CPDFPageFromFPDFPage(page); 315 CPDF_Page* pPage = CPDFPageFromFPDFPage(page);
314 if (!page) { 316 if (!page) {
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
513 pNewXObject->SetData((const uint8_t*)sStream, sStream.GetLength(), FALSE, 515 pNewXObject->SetData((const uint8_t*)sStream, sStream.GetLength(), FALSE,
514 FALSE); 516 FALSE);
515 } 517 }
516 pPageDict->RemoveAt("Annots"); 518 pPageDict->RemoveAt("Annots");
517 519
518 ObjectArray.RemoveAll(); 520 ObjectArray.RemoveAll();
519 RectArray.RemoveAll(); 521 RectArray.RemoveAll();
520 522
521 return FLATTEN_SUCCESS; 523 return FLATTEN_SUCCESS;
522 } 524 }
OLDNEW
« no previous file with comments | « fpdfsdk/include/fxedit/fxet_edit.h ('k') | fpdfsdk/src/fsdk_baseannot.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698