| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright 2015 Google Inc. | 2 * Copyright 2015 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 #include "GrAtlasTextContext.h" | 7 #include "GrAtlasTextContext.h" |
| 8 | 8 |
| 9 #include "GrBatch.h" | 9 #include "GrBatch.h" |
| 10 #include "GrBatchFontCache.h" | 10 #include "GrBatchFontCache.h" |
| (...skipping 1563 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1574 GrFontScaler* scaler = NULL; | 1574 GrFontScaler* scaler = NULL; |
| 1575 SkTypeface* typeface = NULL; | 1575 SkTypeface* typeface = NULL; |
| 1576 | 1576 |
| 1577 for (int i = 0; i < instanceCount; i++) { | 1577 for (int i = 0; i < instanceCount; i++) { |
| 1578 Geometry& args = fGeoData[i]; | 1578 Geometry& args = fGeoData[i]; |
| 1579 Blob* blob = args.fBlob; | 1579 Blob* blob = args.fBlob; |
| 1580 Run& run = blob->fRuns[args.fRun]; | 1580 Run& run = blob->fRuns[args.fRun]; |
| 1581 TextInfo& info = run.fSubRunInfo[args.fSubRun]; | 1581 TextInfo& info = run.fSubRunInfo[args.fSubRun]; |
| 1582 | 1582 |
| 1583 uint64_t currentAtlasGen = fFontCache->atlasGeneration(fMaskFormat); | 1583 uint64_t currentAtlasGen = fFontCache->atlasGeneration(fMaskFormat); |
| 1584 bool regenerateTextureCoords = info.fAtlasGeneration != currentAtlas
Gen; | 1584 bool regenerateTextureCoords = info.fAtlasGeneration != currentAtlas
Gen || |
| 1585 run.fStrike->isAbandoned(); |
| 1585 bool regenerateColors; | 1586 bool regenerateColors; |
| 1586 if (fUseDistanceFields) { | 1587 if (fUseDistanceFields) { |
| 1587 regenerateColors = !fUseLCDText && run.fColor != args.fColor; | 1588 regenerateColors = !fUseLCDText && run.fColor != args.fColor; |
| 1588 } else { | 1589 } else { |
| 1589 regenerateColors = kA8_GrMaskFormat == fMaskFormat && run.fColor
!= args.fColor; | 1590 regenerateColors = kA8_GrMaskFormat == fMaskFormat && run.fColor
!= args.fColor; |
| 1590 } | 1591 } |
| 1591 bool regeneratePositions = args.fTransX != 0.f || args.fTransY != 0.
f; | 1592 bool regeneratePositions = args.fTransX != 0.f || args.fTransY != 0.
f; |
| 1592 int glyphCount = info.fGlyphEndIndex - info.fGlyphStartIndex; | 1593 int glyphCount = info.fGlyphEndIndex - info.fGlyphStartIndex; |
| 1593 | 1594 |
| 1594 // We regenerate both texture coords and colors in the blob itself,
and update the | 1595 // We regenerate both texture coords and colors in the blob itself,
and update the |
| (...skipping 667 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 2262 gTextContext->createDrawTextBlob(rt, clip, grPaint, skPaint, viewMat
rix, text, | 2263 gTextContext->createDrawTextBlob(rt, clip, grPaint, skPaint, viewMat
rix, text, |
| 2263 static_cast<size_t>(textLen), 0, 0,
noClip)); | 2264 static_cast<size_t>(textLen), 0, 0,
noClip)); |
| 2264 | 2265 |
| 2265 SkScalar transX = static_cast<SkScalar>(random->nextU()); | 2266 SkScalar transX = static_cast<SkScalar>(random->nextU()); |
| 2266 SkScalar transY = static_cast<SkScalar>(random->nextU()); | 2267 SkScalar transY = static_cast<SkScalar>(random->nextU()); |
| 2267 const GrAtlasTextContext::BitmapTextBlob::Run::SubRunInfo& info = blob->fRun
s[0].fSubRunInfo[0]; | 2268 const GrAtlasTextContext::BitmapTextBlob::Run::SubRunInfo& info = blob->fRun
s[0].fSubRunInfo[0]; |
| 2268 return gTextContext->createBatch(blob, info, textLen, 0, 0, color, transX, t
ransY, skPaint); | 2269 return gTextContext->createBatch(blob, info, textLen, 0, 0, color, transX, t
ransY, skPaint); |
| 2269 } | 2270 } |
| 2270 | 2271 |
| 2271 #endif | 2272 #endif |
| OLD | NEW |