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

Unified Diff: src/pdf/SkPDFDevice.cpp

Issue 1925693002: remove 'deprecated' region from SkDraw (Closed) Base URL: https://skia.googlesource.com/skia.git@master
Patch Set: update dox Created 4 years, 8 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 | « src/pdf/SkPDFCanvas.cpp ('k') | src/utils/SkCanvasStateUtils.cpp » ('j') | no next file with comments »
Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
Index: src/pdf/SkPDFDevice.cpp
diff --git a/src/pdf/SkPDFDevice.cpp b/src/pdf/SkPDFDevice.cpp
index fb4d2510b76b553cda415c7be709e83a509b629f..5b4ae93504c859d6ad37c673682663be19edc93e 100644
--- a/src/pdf/SkPDFDevice.cpp
+++ b/src/pdf/SkPDFDevice.cpp
@@ -567,7 +567,7 @@ public:
fContentEntry(nullptr),
fXfermode(SkXfermode::kSrcOver_Mode),
fDstFormXObject(nullptr) {
- init(draw.fClipStack, *draw.fClip, *draw.fMatrix, paint, hasText);
+ init(draw.fClipStack, draw.fRC->bwRgn(), *draw.fMatrix, paint, hasText);
}
ScopedContentEntry(SkPDFDevice* device, const SkClipStack* clipStack,
const SkRegion& clipRegion, const SkMatrix& matrix,
@@ -752,7 +752,7 @@ void SkPDFDevice::drawPoints(const SkDraw& d,
// We only use this when there's a path effect because of the overhead
// of multiple calls to setUpContentEntry it causes.
if (passedPaint.getPathEffect()) {
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
SkDraw pointDraw(d);
@@ -876,7 +876,7 @@ void SkPDFDevice::drawRect(const SkDraw& d,
r.sort();
if (paint.getPathEffect()) {
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
SkPath path;
@@ -938,7 +938,7 @@ void SkPDFDevice::drawPath(const SkDraw& d,
}
if (paint.getPathEffect()) {
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
if (!pathIsMutable) {
@@ -963,7 +963,7 @@ void SkPDFDevice::drawPath(const SkDraw& d,
return;
}
- ScopedContentEntry content(this, d.fClipStack, *d.fClip, matrix, paint);
+ ScopedContentEntry content(this, d.fClipStack, d.fRC->bwRgn(), matrix, paint);
if (!content.entry()) {
return;
}
@@ -996,7 +996,7 @@ void SkPDFDevice::drawBitmap(const SkDraw& d,
replace_srcmode_on_opaque_paint(&paint);
}
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
@@ -1004,7 +1004,7 @@ void SkPDFDevice::drawBitmap(const SkDraw& d,
transform.postConcat(*d.fMatrix);
SkImageBitmap imageBitmap(bitmap);
this->internalDrawImage(
- transform, d.fClipStack, *d.fClip, imageBitmap, paint);
+ transform, d.fClipStack, d.fRC->bwRgn(), imageBitmap, paint);
}
void SkPDFDevice::drawSprite(const SkDraw& d,
@@ -1017,7 +1017,7 @@ void SkPDFDevice::drawSprite(const SkDraw& d,
replace_srcmode_on_opaque_paint(&paint);
}
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
@@ -1025,7 +1025,7 @@ void SkPDFDevice::drawSprite(const SkDraw& d,
matrix.setTranslate(SkIntToScalar(x), SkIntToScalar(y));
SkImageBitmap imageBitmap(bitmap);
this->internalDrawImage(
- matrix, d.fClipStack, *d.fClip, imageBitmap, paint);
+ matrix, d.fClipStack, d.fRC->bwRgn(), imageBitmap, paint);
}
void SkPDFDevice::drawImage(const SkDraw& draw,
@@ -1040,14 +1040,14 @@ void SkPDFDevice::drawImage(const SkDraw& draw,
if (image->isOpaque()) {
replace_srcmode_on_opaque_paint(&paint);
}
- if (draw.fClip->isEmpty()) {
+ if (draw.fRC->isEmpty()) {
return;
}
SkMatrix transform = SkMatrix::MakeTrans(x, y);
transform.postConcat(*draw.fMatrix);
SkImageBitmap imageBitmap(const_cast<SkImage*>(image));
this->internalDrawImage(
- transform, draw.fClipStack, *draw.fClip, imageBitmap, paint);
+ transform, draw.fClipStack, draw.fRC->bwRgn(), imageBitmap, paint);
}
void SkPDFDevice::drawImageRect(const SkDraw& draw,
@@ -1277,7 +1277,7 @@ void SkPDFDevice::drawVertices(const SkDraw& d, SkCanvas::VertexMode,
const SkPoint texs[], const SkColor colors[],
SkXfermode* xmode, const uint16_t indices[],
int indexCount, const SkPaint& paint) {
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return;
}
// TODO: implement drawVertices
@@ -1309,7 +1309,7 @@ void SkPDFDevice::drawDevice(const SkDraw& d, SkBaseDevice* device,
SkMatrix matrix;
matrix.setTranslate(SkIntToScalar(x), SkIntToScalar(y));
- ScopedContentEntry content(this, d.fClipStack, *d.fClip, matrix, paint);
+ ScopedContentEntry content(this, d.fClipStack, d.fRC->bwRgn(), matrix, paint);
if (!content.entry()) {
return;
}
@@ -1434,7 +1434,7 @@ bool SkPDFDevice::handleInversePath(const SkDraw& d, const SkPath& origPath,
return false;
}
- if (d.fClip->isEmpty()) {
+ if (d.fRC->isEmpty()) {
return false;
}
@@ -1470,7 +1470,7 @@ bool SkPDFDevice::handleInversePath(const SkDraw& d, const SkPath& origPath,
if (!totalMatrix.invert(&transformInverse)) {
return false;
}
- bounds.set(d.fClip->getBounds());
+ bounds.set(d.fRC->getBounds());
transformInverse.mapRect(&bounds);
// Extend the bounds by the line width (plus some padding)
@@ -1758,9 +1758,10 @@ void SkPDFDevice::finishContentEntry(SkXfermode::Mode xfermode,
SkPDFFormXObject* dstMask = srcFormXObject.get();
if (shape != nullptr) {
// Draw shape into a form-xobject.
+ SkRasterClip rc(clipRegion);
SkDraw d;
d.fMatrix = &identity;
- d.fClip = &clipRegion;
+ d.fRC = &rc;
d.fClipStack = &clipStack;
SkPaint filledPaint;
filledPaint.setColor(SK_ColorBLACK);
« no previous file with comments | « src/pdf/SkPDFCanvas.cpp ('k') | src/utils/SkCanvasStateUtils.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698