Conservative SkTextBlob bounds.
Compute cheaper/more conservative text blob bounds based on the typeface
maximum glyph bbox.
BUG=chromium:451401
R=reed@google.com,bungeman@google.com
Review URL: https://codereview.chromium.org/886473002
diff --git a/include/core/SkTextBlob.h b/include/core/SkTextBlob.h
index 334cfb9..1f04d38 100644
--- a/include/core/SkTextBlob.h
+++ b/include/core/SkTextBlob.h
@@ -23,7 +23,7 @@
class SK_API SkTextBlob : public SkRefCnt {
public:
/**
- * Returns the blob bounding box.
+ * Returns a conservative blob bounding box.
*/
const SkRect& bounds() const { return fBounds; }
@@ -188,6 +188,9 @@
int count, SkPoint offset);
void updateDeferredBounds();
+ static SkRect ConservativeRunBounds(const SkTextBlob::RunRecord&);
+ static SkRect TightRunBounds(const SkTextBlob::RunRecord&);
+
SkAutoTMalloc<uint8_t> fStorage;
size_t fStorageSize;
size_t fStorageUsed;