mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
parent
8c9f556716
commit
1e55e997de
@ -407,6 +407,8 @@ class Canvas extends NativeFieldWrapperClass2 {
|
||||
/// [PictureRecorder].
|
||||
void drawPicture(Picture picture) native "Canvas_drawPicture";
|
||||
|
||||
void drawParagraph(Paragraph paragraph, Offset offset) native "Canvas_drawParagraph";
|
||||
|
||||
void drawVertices(VertexMode vertexMode,
|
||||
List<Point> vertices,
|
||||
List<Point> textureCoordinates,
|
||||
|
||||
@ -8,6 +8,7 @@
|
||||
|
||||
#include "sky/engine/core/painting/CanvasImage.h"
|
||||
#include "sky/engine/core/painting/Matrix.h"
|
||||
#include "sky/engine/core/text/Paragraph.h"
|
||||
#include "sky/engine/platform/geometry/IntRect.h"
|
||||
#include "sky/engine/tonic/dart_args.h"
|
||||
#include "sky/engine/tonic/dart_binding_macros.h"
|
||||
@ -52,6 +53,7 @@ IMPLEMENT_WRAPPERTYPEINFO(ui, Canvas);
|
||||
V(Canvas, drawImageRect) \
|
||||
V(Canvas, drawImageNine) \
|
||||
V(Canvas, drawPicture) \
|
||||
V(Canvas, drawParagraph) \
|
||||
V(Canvas, drawVertices) \
|
||||
V(Canvas, drawAtlas)
|
||||
|
||||
@ -278,6 +280,13 @@ void Canvas::drawPicture(Picture* picture)
|
||||
m_canvas->drawPicture(picture->toSkia());
|
||||
}
|
||||
|
||||
void Canvas::drawParagraph(Paragraph* paragraph, const Offset& offset) {
|
||||
if (!m_canvas)
|
||||
return;
|
||||
ASSERT(paragraph);
|
||||
paragraph->paint(this, offset);
|
||||
}
|
||||
|
||||
void Canvas::drawVertices(SkCanvas::VertexMode vertexMode,
|
||||
const std::vector<Point>& vertices,
|
||||
const std::vector<Point>& textureCoordinates,
|
||||
|
||||
@ -22,8 +22,9 @@
|
||||
#include "third_party/skia/include/core/SkCanvas.h"
|
||||
|
||||
namespace blink {
|
||||
class DartLibraryNatives;
|
||||
class CanvasImage;
|
||||
class DartLibraryNatives;
|
||||
class Paragraph;
|
||||
|
||||
template <>
|
||||
struct DartConverter<SkCanvas::VertexMode> : public DartConverterInteger<SkCanvas::VertexMode> {};
|
||||
@ -66,6 +67,7 @@ public:
|
||||
void drawImageRect(const CanvasImage* image, Rect& src, Rect& dst, const Paint& paint);
|
||||
void drawImageNine(const CanvasImage* image, Rect& center, Rect& dst, const Paint& paint);
|
||||
void drawPicture(Picture* picture);
|
||||
void drawParagraph(Paragraph* paragraph, const Offset& offset);
|
||||
|
||||
void drawVertices(SkCanvas::VertexMode vertexMode,
|
||||
const std::vector<Point>& vertices,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user