| Index: src/pdf/SkPDFUtils.cpp
|
| diff --git a/src/pdf/SkPDFUtils.cpp b/src/pdf/SkPDFUtils.cpp
|
| index e488f7da06956ede2d49139a788f3925ccd57b16..d034270e07447f07503e603109868d72e9d252f9 100644
|
| --- a/src/pdf/SkPDFUtils.cpp
|
| +++ b/src/pdf/SkPDFUtils.cpp
|
| @@ -93,13 +93,6 @@
|
| SkPDFScalar::Append(dstY, content);
|
| content->writeText(" ");
|
| content->writeText(cmd.c_str());
|
| -}
|
| -
|
| -static void append_quad(const SkPoint quad[], SkWStream* content) {
|
| - SkPoint cubic[4];
|
| - SkConvertQuadToCubic(quad, cubic);
|
| - SkPDFUtils::AppendCubic(cubic[1].fX, cubic[1].fY, cubic[2].fX, cubic[2].fY,
|
| - cubic[3].fX, cubic[3].fY, content);
|
| }
|
|
|
| // static
|
| @@ -137,7 +130,9 @@
|
| SkDynamicMemoryWStream currentSegment;
|
| SkPoint args[4];
|
| SkPath::Iter iter(path, false);
|
| - for (SkPath::Verb verb = iter.next(args); verb != SkPath::kDone_Verb; verb = iter.next(args)) {
|
| + for (SkPath::Verb verb = iter.next(args);
|
| + verb != SkPath::kDone_Verb;
|
| + verb = iter.next(args)) {
|
| // args gets all the points, even the implicit first point.
|
| switch (verb) {
|
| case SkPath::kMove_Verb:
|
| @@ -155,18 +150,14 @@
|
| fillState = kNonSingleLine_SkipFillState;
|
| }
|
| break;
|
| - case SkPath::kQuad_Verb:
|
| - append_quad(args, ¤tSegment);
|
| + case SkPath::kQuad_Verb: {
|
| + SkPoint cubic[4];
|
| + SkConvertQuadToCubic(args, cubic);
|
| + AppendCubic(cubic[1].fX, cubic[1].fY, cubic[2].fX, cubic[2].fY,
|
| + cubic[3].fX, cubic[3].fY, ¤tSegment);
|
| fillState = kNonSingleLine_SkipFillState;
|
| break;
|
| - case SkPath::kConic_Verb: {
|
| - const SkScalar tol = SK_Scalar1 / 4;
|
| - SkAutoConicToQuads converter;
|
| - const SkPoint* quads = converter.computeQuads(args, iter.conicWeight(), tol);
|
| - for (int i = 0; i < converter.countQuads(); ++i) {
|
| - append_quad(&quads[i * 2], ¤tSegment);
|
| - }
|
| - } break;
|
| + }
|
| case SkPath::kCubic_Verb:
|
| AppendCubic(args[1].fX, args[1].fY, args[2].fX, args[2].fY,
|
| args[3].fX, args[3].fY, ¤tSegment);
|
|
|