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

Side by Side Diff: core/fpdfapi/fpdf_render/render_int.h

Issue 2298163004: Move CPDF_Type3Cache and CPDF_Type3Glyphs to their own files (Closed)
Patch Set: Nits Created 4 years, 3 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 | « core/fpdfapi/fpdf_render/fpdf_render_text.cpp ('k') | no next file » | 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 #ifndef CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_ 7 #ifndef CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_
8 #define CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_ 8 #define CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_
9 9
10 #include <map> 10 #include <map>
(...skipping 28 matching lines...) Expand all
39 class CPDF_PageObjectHolder; 39 class CPDF_PageObjectHolder;
40 class CPDF_PageRenderCache; 40 class CPDF_PageRenderCache;
41 class CPDF_PathObject; 41 class CPDF_PathObject;
42 class CPDF_RenderStatus; 42 class CPDF_RenderStatus;
43 class CPDF_ShadingObject; 43 class CPDF_ShadingObject;
44 class CPDF_ShadingPattern; 44 class CPDF_ShadingPattern;
45 class CPDF_Stream; 45 class CPDF_Stream;
46 class CPDF_TilingPattern; 46 class CPDF_TilingPattern;
47 class CPDF_TransferFunc; 47 class CPDF_TransferFunc;
48 class CPDF_Type3Cache; 48 class CPDF_Type3Cache;
49 class CPDF_Type3Glyphs;
49 class CPDF_Type3Char; 50 class CPDF_Type3Char;
50 class CPDF_Type3Font; 51 class CPDF_Type3Font;
51 52
52 #define TYPE3_MAX_BLUES 16
53
54 FX_BOOL IsAvailableMatrix(const CFX_Matrix& matrix); 53 FX_BOOL IsAvailableMatrix(const CFX_Matrix& matrix);
55 54
56 class CPDF_Type3Glyphs {
57 public:
58 CPDF_Type3Glyphs();
59 ~CPDF_Type3Glyphs();
60
61 void AdjustBlue(FX_FLOAT top,
62 FX_FLOAT bottom,
63 int& top_line,
64 int& bottom_line);
65
66 std::map<uint32_t, CFX_GlyphBitmap*> m_GlyphMap;
67 int m_TopBlue[TYPE3_MAX_BLUES];
68 int m_BottomBlue[TYPE3_MAX_BLUES];
69 int m_TopBlueCount;
70 int m_BottomBlueCount;
71 };
72
73 class CPDF_Type3Cache {
74 public:
75 explicit CPDF_Type3Cache(CPDF_Type3Font* pFont);
76 ~CPDF_Type3Cache();
77
78 CFX_GlyphBitmap* LoadGlyph(uint32_t charcode,
79 const CFX_Matrix* pMatrix,
80 FX_FLOAT retinaScaleX = 1.0f,
81 FX_FLOAT retinaScaleY = 1.0f);
82
83 protected:
84 CFX_GlyphBitmap* RenderGlyph(CPDF_Type3Glyphs* pSize,
85 uint32_t charcode,
86 const CFX_Matrix* pMatrix,
87 FX_FLOAT retinaScaleX = 1.0f,
88 FX_FLOAT retinaScaleY = 1.0f);
89 CPDF_Type3Font* const m_pFont;
90 std::map<CFX_ByteString, CPDF_Type3Glyphs*> m_SizeMap;
91 };
92
93 class CPDF_TransferFunc { 55 class CPDF_TransferFunc {
94 public: 56 public:
95 explicit CPDF_TransferFunc(CPDF_Document* pDoc); 57 explicit CPDF_TransferFunc(CPDF_Document* pDoc);
96 58
97 FX_COLORREF TranslateColor(FX_COLORREF src) const; 59 FX_COLORREF TranslateColor(FX_COLORREF src) const;
98 CFX_DIBSource* TranslateImage(const CFX_DIBSource* pSrc, 60 CFX_DIBSource* TranslateImage(const CFX_DIBSource* pSrc,
99 FX_BOOL bAutoDropSrc); 61 FX_BOOL bAutoDropSrc);
100 62
101 CPDF_Document* const m_pPDFDoc; 63 CPDF_Document* const m_pPDFDoc;
102 FX_BOOL m_bIdentity; 64 FX_BOOL m_bIdentity;
(...skipping 528 matching lines...) Expand 10 before | Expand all | Expand 10 after
631 const uint8_t* src_buf, 593 const uint8_t* src_buf,
632 int pixels, 594 int pixels,
633 int Bpp) const override; 595 int Bpp) const override;
634 596
635 const uint8_t* m_RampR; 597 const uint8_t* m_RampR;
636 const uint8_t* m_RampG; 598 const uint8_t* m_RampG;
637 const uint8_t* m_RampB; 599 const uint8_t* m_RampB;
638 }; 600 };
639 601
640 #endif // CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_ 602 #endif // CORE_FPDFAPI_FPDF_RENDER_RENDER_INT_H_
OLDNEW
« no previous file with comments | « core/fpdfapi/fpdf_render/fpdf_render_text.cpp ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698