| 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 "public/fpdf_transformpage.h" | 7 #include "public/fpdf_transformpage.h" |
| 8 | 8 |
| 9 #include "core/fpdfapi/fpdf_page/include/cpdf_clippath.h" | 9 #include "core/fpdfapi/fpdf_page/include/cpdf_clippath.h" |
| 10 #include "core/fpdfapi/fpdf_page/include/cpdf_page.h" | 10 #include "core/fpdfapi/fpdf_page/include/cpdf_page.h" |
| (...skipping 205 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 216 } | 216 } |
| 217 | 217 |
| 218 DLLEXPORT FPDF_CLIPPATH STDCALL FPDF_CreateClipPath(float left, | 218 DLLEXPORT FPDF_CLIPPATH STDCALL FPDF_CreateClipPath(float left, |
| 219 float bottom, | 219 float bottom, |
| 220 float right, | 220 float right, |
| 221 float top) { | 221 float top) { |
| 222 CPDF_Path Path; | 222 CPDF_Path Path; |
| 223 Path.AppendRect(left, bottom, right, top); | 223 Path.AppendRect(left, bottom, right, top); |
| 224 | 224 |
| 225 CPDF_ClipPath* pNewClipPath = new CPDF_ClipPath(); | 225 CPDF_ClipPath* pNewClipPath = new CPDF_ClipPath(); |
| 226 pNewClipPath->GetPrivateCopy(); | |
| 227 pNewClipPath->AppendPath(Path, FXFILL_ALTERNATE, FALSE); | 226 pNewClipPath->AppendPath(Path, FXFILL_ALTERNATE, FALSE); |
| 228 return pNewClipPath; | 227 return pNewClipPath; |
| 229 } | 228 } |
| 230 | 229 |
| 231 DLLEXPORT void STDCALL FPDF_DestroyClipPath(FPDF_CLIPPATH clipPath) { | 230 DLLEXPORT void STDCALL FPDF_DestroyClipPath(FPDF_CLIPPATH clipPath) { |
| 232 delete (CPDF_ClipPath*)clipPath; | 231 delete (CPDF_ClipPath*)clipPath; |
| 233 } | 232 } |
| 234 | 233 |
| 235 void OutputPath(CFX_ByteTextBuf& buf, CPDF_Path path) { | 234 void OutputPath(CFX_ByteTextBuf& buf, CPDF_Path path) { |
| 236 const CFX_PathData* pPathData = path.GetObject(); | 235 const CFX_PathData* pPathData = path.GetObject(); |
| (...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 326 } else if (pDirectObj->IsStream()) { | 325 } else if (pDirectObj->IsStream()) { |
| 327 pContentArray = new CPDF_Array(); | 326 pContentArray = new CPDF_Array(); |
| 328 pContentArray->AddReference(pDoc, pStream->GetObjNum()); | 327 pContentArray->AddReference(pDoc, pStream->GetObjNum()); |
| 329 pContentArray->AddReference(pDoc, pDirectObj->GetObjNum()); | 328 pContentArray->AddReference(pDoc, pDirectObj->GetObjNum()); |
| 330 pPageDic->SetAtReference("Contents", pDoc, | 329 pPageDic->SetAtReference("Contents", pDoc, |
| 331 pDoc->AddIndirectObject(pContentArray)); | 330 pDoc->AddIndirectObject(pContentArray)); |
| 332 } | 331 } |
| 333 } | 332 } |
| 334 } | 333 } |
| 335 } | 334 } |
| OLD | NEW |