From 86ad8d643624a55b02e529100bbe4e2940115fa1 Mon Sep 17 00:00:00 2001 From: halcanary Date: Fri, 20 Mar 2015 09:10:56 -0700 Subject: PDF: remove last use of SkPDFImage Add a GM. BUG=skia:255 Review URL: https://codereview.chromium.org/950633003 --- src/pdf/SkPDFDevice.cpp | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'src/pdf/SkPDFDevice.cpp') diff --git a/src/pdf/SkPDFDevice.cpp b/src/pdf/SkPDFDevice.cpp index 273b958a8c..a0ad1343af 100644 --- a/src/pdf/SkPDFDevice.cpp +++ b/src/pdf/SkPDFDevice.cpp @@ -17,10 +17,10 @@ #include "SkPaint.h" #include "SkPath.h" #include "SkPathOps.h" +#include "SkPDFBitmap.h" #include "SkPDFFont.h" #include "SkPDFFormXObject.h" #include "SkPDFGraphicState.h" -#include "SkPDFImage.h" #include "SkPDFResourceDict.h" #include "SkPDFShader.h" #include "SkPDFStream.h" @@ -2126,7 +2126,7 @@ void SkPDFDevice::internalDrawBitmap(const SkMatrix& origMatrix, if (content.needShape()) { SkPath shape; shape.addRect(SkRect::MakeWH(SkIntToScalar(subset.width()), - SkIntToScalar( subset.height()))); + SkIntToScalar(subset.height()))); shape.transform(matrix); content.setShape(shape); } @@ -2134,8 +2134,12 @@ void SkPDFDevice::internalDrawBitmap(const SkMatrix& origMatrix, return; } - SkAutoTUnref image( - SkPDFCreateImageObject(fCanon, *bitmap, subset)); + SkBitmap subsetBitmap; + // Should extractSubset be done by the SkPDFDevice? + if (!bitmap->extractSubset(&subsetBitmap, subset)) { + return; + } + SkAutoTUnref image(SkPDFBitmap::Create(fCanon, subsetBitmap)); if (!image) { return; } -- cgit v1.2.3