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

Unified Diff: experimental/PdfViewer/SkPdfBasics.cpp

Issue 20810002: pdfviewer: (draft, not to be checked in, just for backup online) gs implementation (Closed) Base URL: http://skia.googlecode.com/svn/trunk/
Patch Set: Created 7 years, 5 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 side-by-side diff with in-line comments
Download patch
« no previous file with comments | « experimental/PdfViewer/SkPdfBasics.h ('k') | experimental/PdfViewer/SkPdfRenderer.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: experimental/PdfViewer/SkPdfBasics.cpp
===================================================================
--- experimental/PdfViewer/SkPdfBasics.cpp (revision 10357)
+++ experimental/PdfViewer/SkPdfBasics.cpp (working copy)
@@ -1,6 +1,8 @@
#include "SkPdfBasics.h"
#include "SkPdfNativeTokenizer.h"
+#include "SkDashPathEffect.h"
+
PdfContext::PdfContext(SkNativeParsedPDF* doc)
: fPdfDoc(doc)
, fTmpPageAllocator(new SkPdfAllocator()) {
@@ -9,3 +11,25 @@
PdfContext::~PdfContext() {
delete fTmpPageAllocator;
}
+
+void SkPdfGraphicsState::applyGraphicsState(SkPaint* paint, bool stroking) {
+ if (stroking) {
+ fStroking.applyGraphicsState(paint);
+ } else {
+ fNonStroking.applyGraphicsState(paint);
+ }
+
+ // TODO(edisonn): get this from pdfContext->options,
+ // or pdfContext->addPaintOptions(&paint);
+ paint->setAntiAlias(true);
+
+ // TODO(edisonn): miter, ...
+ if (stroking) {
+ paint->setStrokeWidth(SkDoubleToScalar(fLineWidth));
+ // TODO(edisonn): perf, two sets of allocs, create SkDashPathEffect constr that takes ownership
+ // of the intervals
+ if (fDashArrayLength > 0 && fDashPhase > 0) {
+ paint->setPathEffect(new SkDashPathEffect(fDashArray, fDashArrayLength, fDashPhase))->unref();
+ }
+ }
+}
« no previous file with comments | « experimental/PdfViewer/SkPdfBasics.h ('k') | experimental/PdfViewer/SkPdfRenderer.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698