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

Side by Side Diff: experimental/PdfViewer/SkPdfGraphicsState.h

Issue 77763007: Move SkPdfContext into its own files. (Closed) Base URL: https://skia.googlecode.com/svn/trunk
Patch Set: Created 7 years, 1 month 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 | Annotate | Revision Log
« no previous file with comments | « experimental/PdfViewer/SkPdfFont.h ('k') | experimental/PdfViewer/SkPdfGraphicsState.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 /* 1 /*
2 * Copyright 2013 Google Inc. 2 * Copyright 2013 Google Inc.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license that can be 4 * Use of this source code is governed by a BSD-style license that can be
5 * found in the LICENSE file. 5 * found in the LICENSE file.
6 */ 6 */
7 7
8 #ifndef SkPdfGraphicsState_DEFINED 8 #ifndef SkPdfGraphicsState_DEFINED
9 #define SkPdfGraphicsState_DEFINED 9 #define SkPdfGraphicsState_DEFINED
10 10
11 #include "SkCanvas.h" 11 #include "SkCanvas.h"
12 #include "SkPaint.h" 12 #include "SkPaint.h"
13 #include "SkPdfConfig.h" 13 #include "SkPdfConfig.h"
14 #include "SkPdfUtils.h" 14 #include "SkPdfUtils.h"
15 #include "SkTDStackNester.h"
16 15
17 class SkPdfAllocator;
18 class SkPdfFont; 16 class SkPdfFont;
19 class SkPdfDoc;
20 class SkPdfNativeDoc;
21 class SkPdfNativeObject; 17 class SkPdfNativeObject;
22 class SkPdfResourceDictionary; 18 class SkPdfResourceDictionary;
23 class SkPdfSoftMaskDictionary; 19 class SkPdfSoftMaskDictionary;
24 20
25 /** \class SkPdfColorOperator 21 /** \class SkPdfColorOperator
26 * Operates on stroking or non-stroking properties. 22 * Operates on stroking or non-stroking properties.
27 */ 23 */
28 class SkPdfColorOperator { 24 class SkPdfColorOperator {
29 25
30 /* 26 /*
(...skipping 42 matching lines...) Expand 10 before | Expand all | Expand 10 after
73 fColorSpace.fBuffer = (const unsigned char*)"Pattern"; 69 fColorSpace.fBuffer = (const unsigned char*)"Pattern";
74 fColorSpace.fBytes = 7; // strlen("Pattern") 70 fColorSpace.fBytes = 7; // strlen("Pattern")
75 fPattern = pattern; 71 fPattern = pattern;
76 } 72 }
77 73
78 void applyGraphicsState(SkPaint* paint) { 74 void applyGraphicsState(SkPaint* paint) {
79 paint->setColor(SkColorSetA(fColor, (U8CPU)(fOpacity * 255))); 75 paint->setColor(SkColorSetA(fColor, (U8CPU)(fOpacity * 255)));
80 } 76 }
81 }; 77 };
82 78
83 /** \class SkTDStackNester 79 /**
84 * Operates on stroking or non-stroking properties. 80 * Operates on stroking or non-stroking properties.
85 */ 81 */
86 struct SkPdfGraphicsState { 82 struct SkPdfGraphicsState {
87 // TODO(edisonn): deprecate and remove these! 83 // TODO(edisonn): deprecate and remove these!
88 double fCurPosX; 84 double fCurPosX;
89 double fCurPosY; 85 double fCurPosY;
90 86
91 double fCurFontSize; 87 double fCurFontSize;
92 bool fTextBlock; 88 bool fTextBlock;
93 SkPdfFont* fSkFont; 89 SkPdfFont* fSkFont;
(...skipping 254 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 fDashPhase = 0; 344 fDashPhase = 0;
349 fBlendModesLength = 1; 345 fBlendModesLength = 1;
350 fBlendModes[0] = SkXfermode::kSrc_Mode; // PDF: Normal Blend mode 346 fBlendModes[0] = SkXfermode::kSrc_Mode; // PDF: Normal Blend mode
351 fSMask = NULL; 347 fSMask = NULL;
352 } 348 }
353 349
354 // TODO(edisonn): make two functions instead, stroking and non stoking, avoi d branching 350 // TODO(edisonn): make two functions instead, stroking and non stoking, avoi d branching
355 void applyGraphicsState(SkPaint* paint, bool stroking); 351 void applyGraphicsState(SkPaint* paint, bool stroking);
356 }; 352 };
357 353
358 /** \class SkPdfContext
359 * The context of the drawing. The document we draw from, the current stack of objects, ...
360 */
361 class SkPdfContext {
362 public:
363 SkTDStackNester<SkPdfNativeObject*> fObjectStack;
364 SkTDStackNester<SkPdfGraphicsState> fStateStack;
365 SkPdfGraphicsState fGraphicsState;
366 SkPdfNativeDoc* fPdfDoc;
367 SkPdfAllocator* fTmpPageAllocator;
368 SkMatrix fOriginalMatrix;
369
370 SkPdfContext(SkPdfNativeDoc* doc);
371 ~SkPdfContext();
372 };
373
374 #endif // SkPdfGraphicsState_DEFINED 354 #endif // SkPdfGraphicsState_DEFINED
OLDNEW
« no previous file with comments | « experimental/PdfViewer/SkPdfFont.h ('k') | experimental/PdfViewer/SkPdfGraphicsState.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698