Loading core/jni/android/graphics/Paint.cpp +16 −14 Original line number Diff line number Diff line Loading @@ -112,8 +112,8 @@ namespace PaintGlue { float measured = 0; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(&paint, bidiFlags, typeface, text, 0, count, count, advancesArray.get()); MinikinUtils::measureText(&paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count, advancesArray.get()); for (int i = 0; i < count; i++) { // traverse in the given direction Loading Loading @@ -203,8 +203,9 @@ namespace PaintGlue { if (advances) { advancesArray.reset(new jfloat[count]); } const float advance = MinikinUtils::measureText(paint, bidiFlags, typeface, text, start, count, contextCount, advancesArray.get()); const float advance = MinikinUtils::measureText(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, start, count, contextCount, advancesArray.get()); if (advances) { env->SetFloatArrayRegion(advances, advancesIndex, count, advancesArray.get()); } Loading Loading @@ -239,7 +240,7 @@ namespace PaintGlue { static jint doTextRunCursor(JNIEnv *env, Paint* paint, const Typeface* typeface, const jchar *text, jint start, jint count, jint dir, jint offset, jint opt) { minikin::GraphemeBreak::MoveOpt moveOpt = minikin::GraphemeBreak::MoveOpt(opt); int bidiFlags = dir == 1 ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = dir == 1 ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(paint, bidiFlags, typeface, text, start, count, start + count, advancesArray.get()); Loading Loading @@ -305,7 +306,7 @@ namespace PaintGlue { static void getTextPath(JNIEnv* env, Paint* paint, const Typeface* typeface, const jchar* text, jint count, jint bidiFlags, jfloat x, jfloat y, SkPath* path) { minikin::Layout layout = MinikinUtils::doLayout( paint, bidiFlags, typeface, text, 0, count, count); paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count); size_t nGlyphs = layout.nGlyphs(); uint16_t* glyphs = new uint16_t[nGlyphs]; SkPoint* pos = new SkPoint[nGlyphs]; Loading Loading @@ -346,8 +347,8 @@ namespace PaintGlue { SkRect r; SkIRect ir; minikin::Layout layout = MinikinUtils::doLayout( &paint, bidiFlags, typeface, text, 0, count, count); minikin::Layout layout = MinikinUtils::doLayout(&paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count); minikin::MinikinRect rect; layout.getBounds(&rect); r.fLeft = rect.mLeft; Loading Loading @@ -461,8 +462,9 @@ namespace PaintGlue { nChars++; prevCp = cp; } minikin::Layout layout = MinikinUtils::doLayout( paint, bidiFlags, typeface, str.get(), 0, str.size(), str.size()); minikin::Layout layout = MinikinUtils::doLayout(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, str.get(), 0, str.size(), str.size()); size_t nGlyphs = countNonSpaceGlyphs(layout); if (nGlyphs != 1 && nChars > 1) { // multiple-character input, and was not a ligature Loading @@ -481,8 +483,8 @@ namespace PaintGlue { // since ZZ is reserved for unknown or invalid territory. // U+1F1FF (REGIONAL INDICATOR SYMBOL LETTER Z) is \uD83C\uDDFF in UTF16. static const jchar ZZ_FLAG_STR[] = { 0xD83C, 0xDDFF, 0xD83C, 0xDDFF }; minikin::Layout zzLayout = MinikinUtils::doLayout( paint, bidiFlags, typeface, ZZ_FLAG_STR, 0, 4, 4); minikin::Layout zzLayout = MinikinUtils::doLayout(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, ZZ_FLAG_STR, 0, 4, 4); if (zzLayout.nGlyphs() != 1 || layoutContainsNotdef(zzLayout)) { // The font collection doesn't have a glyph for unknown flag. Just return true. return true; Loading @@ -494,7 +496,7 @@ namespace PaintGlue { static jfloat doRunAdvance(const Paint* paint, const Typeface* typeface, const jchar buf[], jint start, jint count, jint bufSize, jboolean isRtl, jint offset) { int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; if (offset == start + count) { return MinikinUtils::measureText(paint, bidiFlags, typeface, buf, start, count, bufSize, nullptr); Loading @@ -519,7 +521,7 @@ namespace PaintGlue { static jint doOffsetForAdvance(const Paint* paint, const Typeface* typeface, const jchar buf[], jint start, jint count, jint bufSize, jboolean isRtl, jfloat advance) { int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(paint, bidiFlags, typeface, buf, start, count, bufSize, advancesArray.get()); Loading core/jni/android_graphics_Canvas.cpp +8 −8 Original line number Diff line number Diff line Loading @@ -480,7 +480,7 @@ static void drawTextChars(JNIEnv* env, jobject, jlong canvasHandle, jcharArray t const Typeface* typeface = paint->getAndroidTypeface(); jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawText(jchars + index, 0, count, count, x, y, bidiFlags, *paint, typeface); static_cast<minikin::Bidi>(bidiFlags), *paint, typeface); env->ReleaseCharArrayElements(text, jchars, JNI_ABORT); } Loading @@ -492,7 +492,7 @@ static void drawTextString(JNIEnv* env, jobject, jlong canvasHandle, jstring tex const int count = end - start; const jchar* jchars = env->GetStringChars(text, NULL); get_canvas(canvasHandle)->drawText(jchars + start, 0, count, count, x, y, bidiFlags, *paint, typeface); static_cast<minikin::Bidi>(bidiFlags), *paint, typeface); env->ReleaseStringChars(text, jchars); } Loading @@ -502,7 +502,7 @@ static void drawTextRunChars(JNIEnv* env, jobject, jlong canvasHandle, jcharArra Paint* paint = reinterpret_cast<Paint*>(paintHandle); const Typeface* typeface = paint->getAndroidTypeface(); const int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; const minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawText(jchars + contextIndex, index - contextIndex, count, contextCount, x, y, bidiFlags, *paint, typeface); Loading @@ -515,7 +515,7 @@ static void drawTextRunString(JNIEnv* env, jobject obj, jlong canvasHandle, jstr Paint* paint = reinterpret_cast<Paint*>(paintHandle); const Typeface* typeface = paint->getAndroidTypeface(); int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; const minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; jint count = end - start; jint contextCount = contextEnd - contextStart; const jchar* jchars = env->GetStringChars(text, NULL); Loading @@ -533,8 +533,8 @@ static void drawTextOnPathChars(JNIEnv* env, jobject, jlong canvasHandle, jcharA jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawTextOnPath(jchars + index, count, bidiFlags, *path, hOffset, vOffset, *paint, typeface); get_canvas(canvasHandle)->drawTextOnPath(jchars + index, count, static_cast<minikin::Bidi>(bidiFlags), *path, hOffset, vOffset, *paint, typeface); env->ReleaseCharArrayElements(text, jchars, 0); } Loading @@ -549,8 +549,8 @@ static void drawTextOnPathString(JNIEnv* env, jobject, jlong canvasHandle, jstri const jchar* jchars = env->GetStringChars(text, NULL); int count = env->GetStringLength(text); get_canvas(canvasHandle)->drawTextOnPath(jchars, count, bidiFlags, *path, hOffset, vOffset, *paint, typeface); get_canvas(canvasHandle)->drawTextOnPath(jchars, count, static_cast<minikin::Bidi>(bidiFlags), *path, hOffset, vOffset, *paint, typeface); env->ReleaseStringChars(text, jchars); } Loading libs/hwui/hwui/Canvas.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -158,7 +158,8 @@ private: }; void Canvas::drawText(const uint16_t* text, int start, int count, int contextCount, float x, float y, int bidiFlags, const Paint& origPaint, const Typeface* typeface) { float x, float y, minikin::Bidi bidiFlags, const Paint& origPaint, const Typeface* typeface) { // minikin may modify the original paint Paint paint(origPaint); Loading Loading @@ -206,8 +207,9 @@ private: const SkPath& path; }; void Canvas::drawTextOnPath(const uint16_t* text, int count, int bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface) { void Canvas::drawTextOnPath(const uint16_t* text, int count, minikin::Bidi bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface) { Paint paintCopy(paint); minikin::Layout layout = MinikinUtils::doLayout( &paintCopy, bidiFlags, typeface, text, 0, count, count); Loading libs/hwui/hwui/Canvas.h +6 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ class SkVertices; namespace minikin { class Layout; enum class Bidi : uint8_t; } namespace android { Loading Loading @@ -255,10 +256,12 @@ public: * and delegating the final draw to virtual drawGlyphs method. */ void drawText(const uint16_t* text, int start, int count, int contextCount, float x, float y, int bidiFlags, const Paint& origPaint, const Typeface* typeface); float x, float y, minikin::Bidi bidiFlags, const Paint& origPaint, const Typeface* typeface); void drawTextOnPath(const uint16_t* text, int count, int bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface); void drawTextOnPath(const uint16_t* text, int count, minikin::Bidi bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface); protected: void drawTextDecorations(float x, float y, float length, const SkPaint& paint); Loading libs/hwui/hwui/MinikinUtils.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -51,9 +51,8 @@ minikin::FontStyle MinikinUtils::prepareMinikinPaint(minikin::MinikinPaint* mini return minikinStyle; } minikin::Layout MinikinUtils::doLayout(const Paint* paint, int bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize) { minikin::Layout MinikinUtils::doLayout(const Paint* paint, minikin::Bidi bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize) { minikin::MinikinPaint minikinPaint; minikin::FontStyle minikinStyle = prepareMinikinPaint(&minikinPaint, paint, typeface); minikin::Layout layout; Loading @@ -62,8 +61,9 @@ minikin::Layout MinikinUtils::doLayout(const Paint* paint, int bidiFlags, return layout; } float MinikinUtils::measureText(const Paint* paint, int bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize, float *advances) { float MinikinUtils::measureText(const Paint* paint, minikin::Bidi bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize, float *advances) { minikin::MinikinPaint minikinPaint; minikin::FontStyle minikinStyle = prepareMinikinPaint(&minikinPaint, paint, typeface); const Typeface* resolvedTypeface = Typeface::resolveDefault(typeface); Loading Loading
core/jni/android/graphics/Paint.cpp +16 −14 Original line number Diff line number Diff line Loading @@ -112,8 +112,8 @@ namespace PaintGlue { float measured = 0; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(&paint, bidiFlags, typeface, text, 0, count, count, advancesArray.get()); MinikinUtils::measureText(&paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count, advancesArray.get()); for (int i = 0; i < count; i++) { // traverse in the given direction Loading Loading @@ -203,8 +203,9 @@ namespace PaintGlue { if (advances) { advancesArray.reset(new jfloat[count]); } const float advance = MinikinUtils::measureText(paint, bidiFlags, typeface, text, start, count, contextCount, advancesArray.get()); const float advance = MinikinUtils::measureText(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, start, count, contextCount, advancesArray.get()); if (advances) { env->SetFloatArrayRegion(advances, advancesIndex, count, advancesArray.get()); } Loading Loading @@ -239,7 +240,7 @@ namespace PaintGlue { static jint doTextRunCursor(JNIEnv *env, Paint* paint, const Typeface* typeface, const jchar *text, jint start, jint count, jint dir, jint offset, jint opt) { minikin::GraphemeBreak::MoveOpt moveOpt = minikin::GraphemeBreak::MoveOpt(opt); int bidiFlags = dir == 1 ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = dir == 1 ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(paint, bidiFlags, typeface, text, start, count, start + count, advancesArray.get()); Loading Loading @@ -305,7 +306,7 @@ namespace PaintGlue { static void getTextPath(JNIEnv* env, Paint* paint, const Typeface* typeface, const jchar* text, jint count, jint bidiFlags, jfloat x, jfloat y, SkPath* path) { minikin::Layout layout = MinikinUtils::doLayout( paint, bidiFlags, typeface, text, 0, count, count); paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count); size_t nGlyphs = layout.nGlyphs(); uint16_t* glyphs = new uint16_t[nGlyphs]; SkPoint* pos = new SkPoint[nGlyphs]; Loading Loading @@ -346,8 +347,8 @@ namespace PaintGlue { SkRect r; SkIRect ir; minikin::Layout layout = MinikinUtils::doLayout( &paint, bidiFlags, typeface, text, 0, count, count); minikin::Layout layout = MinikinUtils::doLayout(&paint, static_cast<minikin::Bidi>(bidiFlags), typeface, text, 0, count, count); minikin::MinikinRect rect; layout.getBounds(&rect); r.fLeft = rect.mLeft; Loading Loading @@ -461,8 +462,9 @@ namespace PaintGlue { nChars++; prevCp = cp; } minikin::Layout layout = MinikinUtils::doLayout( paint, bidiFlags, typeface, str.get(), 0, str.size(), str.size()); minikin::Layout layout = MinikinUtils::doLayout(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, str.get(), 0, str.size(), str.size()); size_t nGlyphs = countNonSpaceGlyphs(layout); if (nGlyphs != 1 && nChars > 1) { // multiple-character input, and was not a ligature Loading @@ -481,8 +483,8 @@ namespace PaintGlue { // since ZZ is reserved for unknown or invalid territory. // U+1F1FF (REGIONAL INDICATOR SYMBOL LETTER Z) is \uD83C\uDDFF in UTF16. static const jchar ZZ_FLAG_STR[] = { 0xD83C, 0xDDFF, 0xD83C, 0xDDFF }; minikin::Layout zzLayout = MinikinUtils::doLayout( paint, bidiFlags, typeface, ZZ_FLAG_STR, 0, 4, 4); minikin::Layout zzLayout = MinikinUtils::doLayout(paint, static_cast<minikin::Bidi>(bidiFlags), typeface, ZZ_FLAG_STR, 0, 4, 4); if (zzLayout.nGlyphs() != 1 || layoutContainsNotdef(zzLayout)) { // The font collection doesn't have a glyph for unknown flag. Just return true. return true; Loading @@ -494,7 +496,7 @@ namespace PaintGlue { static jfloat doRunAdvance(const Paint* paint, const Typeface* typeface, const jchar buf[], jint start, jint count, jint bufSize, jboolean isRtl, jint offset) { int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; if (offset == start + count) { return MinikinUtils::measureText(paint, bidiFlags, typeface, buf, start, count, bufSize, nullptr); Loading @@ -519,7 +521,7 @@ namespace PaintGlue { static jint doOffsetForAdvance(const Paint* paint, const Typeface* typeface, const jchar buf[], jint start, jint count, jint bufSize, jboolean isRtl, jfloat advance) { int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; std::unique_ptr<float[]> advancesArray(new float[count]); MinikinUtils::measureText(paint, bidiFlags, typeface, buf, start, count, bufSize, advancesArray.get()); Loading
core/jni/android_graphics_Canvas.cpp +8 −8 Original line number Diff line number Diff line Loading @@ -480,7 +480,7 @@ static void drawTextChars(JNIEnv* env, jobject, jlong canvasHandle, jcharArray t const Typeface* typeface = paint->getAndroidTypeface(); jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawText(jchars + index, 0, count, count, x, y, bidiFlags, *paint, typeface); static_cast<minikin::Bidi>(bidiFlags), *paint, typeface); env->ReleaseCharArrayElements(text, jchars, JNI_ABORT); } Loading @@ -492,7 +492,7 @@ static void drawTextString(JNIEnv* env, jobject, jlong canvasHandle, jstring tex const int count = end - start; const jchar* jchars = env->GetStringChars(text, NULL); get_canvas(canvasHandle)->drawText(jchars + start, 0, count, count, x, y, bidiFlags, *paint, typeface); static_cast<minikin::Bidi>(bidiFlags), *paint, typeface); env->ReleaseStringChars(text, jchars); } Loading @@ -502,7 +502,7 @@ static void drawTextRunChars(JNIEnv* env, jobject, jlong canvasHandle, jcharArra Paint* paint = reinterpret_cast<Paint*>(paintHandle); const Typeface* typeface = paint->getAndroidTypeface(); const int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; const minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawText(jchars + contextIndex, index - contextIndex, count, contextCount, x, y, bidiFlags, *paint, typeface); Loading @@ -515,7 +515,7 @@ static void drawTextRunString(JNIEnv* env, jobject obj, jlong canvasHandle, jstr Paint* paint = reinterpret_cast<Paint*>(paintHandle); const Typeface* typeface = paint->getAndroidTypeface(); int bidiFlags = isRtl ? minikin::kBidi_Force_RTL : minikin::kBidi_Force_LTR; const minikin::Bidi bidiFlags = isRtl ? minikin::Bidi::FORCE_RTL : minikin::Bidi::FORCE_LTR; jint count = end - start; jint contextCount = contextEnd - contextStart; const jchar* jchars = env->GetStringChars(text, NULL); Loading @@ -533,8 +533,8 @@ static void drawTextOnPathChars(JNIEnv* env, jobject, jlong canvasHandle, jcharA jchar* jchars = env->GetCharArrayElements(text, NULL); get_canvas(canvasHandle)->drawTextOnPath(jchars + index, count, bidiFlags, *path, hOffset, vOffset, *paint, typeface); get_canvas(canvasHandle)->drawTextOnPath(jchars + index, count, static_cast<minikin::Bidi>(bidiFlags), *path, hOffset, vOffset, *paint, typeface); env->ReleaseCharArrayElements(text, jchars, 0); } Loading @@ -549,8 +549,8 @@ static void drawTextOnPathString(JNIEnv* env, jobject, jlong canvasHandle, jstri const jchar* jchars = env->GetStringChars(text, NULL); int count = env->GetStringLength(text); get_canvas(canvasHandle)->drawTextOnPath(jchars, count, bidiFlags, *path, hOffset, vOffset, *paint, typeface); get_canvas(canvasHandle)->drawTextOnPath(jchars, count, static_cast<minikin::Bidi>(bidiFlags), *path, hOffset, vOffset, *paint, typeface); env->ReleaseStringChars(text, jchars); } Loading
libs/hwui/hwui/Canvas.cpp +5 −3 Original line number Diff line number Diff line Loading @@ -158,7 +158,8 @@ private: }; void Canvas::drawText(const uint16_t* text, int start, int count, int contextCount, float x, float y, int bidiFlags, const Paint& origPaint, const Typeface* typeface) { float x, float y, minikin::Bidi bidiFlags, const Paint& origPaint, const Typeface* typeface) { // minikin may modify the original paint Paint paint(origPaint); Loading Loading @@ -206,8 +207,9 @@ private: const SkPath& path; }; void Canvas::drawTextOnPath(const uint16_t* text, int count, int bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface) { void Canvas::drawTextOnPath(const uint16_t* text, int count, minikin::Bidi bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface) { Paint paintCopy(paint); minikin::Layout layout = MinikinUtils::doLayout( &paintCopy, bidiFlags, typeface, text, 0, count, count); Loading
libs/hwui/hwui/Canvas.h +6 −3 Original line number Diff line number Diff line Loading @@ -33,6 +33,7 @@ class SkVertices; namespace minikin { class Layout; enum class Bidi : uint8_t; } namespace android { Loading Loading @@ -255,10 +256,12 @@ public: * and delegating the final draw to virtual drawGlyphs method. */ void drawText(const uint16_t* text, int start, int count, int contextCount, float x, float y, int bidiFlags, const Paint& origPaint, const Typeface* typeface); float x, float y, minikin::Bidi bidiFlags, const Paint& origPaint, const Typeface* typeface); void drawTextOnPath(const uint16_t* text, int count, int bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface); void drawTextOnPath(const uint16_t* text, int count, minikin::Bidi bidiFlags, const SkPath& path, float hOffset, float vOffset, const Paint& paint, const Typeface* typeface); protected: void drawTextDecorations(float x, float y, float length, const SkPaint& paint); Loading
libs/hwui/hwui/MinikinUtils.cpp +5 −5 Original line number Diff line number Diff line Loading @@ -51,9 +51,8 @@ minikin::FontStyle MinikinUtils::prepareMinikinPaint(minikin::MinikinPaint* mini return minikinStyle; } minikin::Layout MinikinUtils::doLayout(const Paint* paint, int bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize) { minikin::Layout MinikinUtils::doLayout(const Paint* paint, minikin::Bidi bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize) { minikin::MinikinPaint minikinPaint; minikin::FontStyle minikinStyle = prepareMinikinPaint(&minikinPaint, paint, typeface); minikin::Layout layout; Loading @@ -62,8 +61,9 @@ minikin::Layout MinikinUtils::doLayout(const Paint* paint, int bidiFlags, return layout; } float MinikinUtils::measureText(const Paint* paint, int bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize, float *advances) { float MinikinUtils::measureText(const Paint* paint, minikin::Bidi bidiFlags, const Typeface* typeface, const uint16_t* buf, size_t start, size_t count, size_t bufSize, float *advances) { minikin::MinikinPaint minikinPaint; minikin::FontStyle minikinStyle = prepareMinikinPaint(&minikinPaint, paint, typeface); const Typeface* resolvedTypeface = Typeface::resolveDefault(typeface); Loading