diff --git a/lib/src/components/image_editor/data/layer.dart b/lib/src/components/image_editor/data/layer.dart index f5cd576..8b04978 100755 --- a/lib/src/components/image_editor/data/layer.dart +++ b/lib/src/components/image_editor/data/layer.dart @@ -53,8 +53,10 @@ class EmojiLayerData extends Layer { /// Attributes used by [TextLayer] class TextLayerData extends Layer { String text; + int textLayersBefore; TextLayerData({ this.text = "", + required this.textLayersBefore, super.offset, super.opacity, super.rotation, diff --git a/lib/src/components/image_editor/layers/text_layer.dart b/lib/src/components/image_editor/layers/text_layer.dart index 0de8163..3f7f8c1 100755 --- a/lib/src/components/image_editor/layers/text_layer.dart +++ b/lib/src/components/image_editor/layers/text_layer.dart @@ -33,8 +33,11 @@ class _TextViewState extends State { // Set the initial offset to the center of the screen WidgetsBinding.instance.addPostFrameCallback((_) { setState(() { - widget.layerData.offset = - Offset(0, MediaQuery.of(context).size.height / 2 - 30); + widget.layerData.offset = Offset( + 0, + MediaQuery.of(context).size.height / 2 - + 150 + + (widget.layerData.textLayersBefore * 40)); }); }); } diff --git a/lib/src/views/camera_to_share/share_image_editor_view.dart b/lib/src/views/camera_to_share/share_image_editor_view.dart index 07cde02..21270c9 100644 --- a/lib/src/views/camera_to_share/share_image_editor_view.dart +++ b/lib/src/views/camera_to_share/share_image_editor_view.dart @@ -90,7 +90,9 @@ class _ShareImageEditorView extends State { if (layers.any((x) => x.isEditing)) return; undoLayers.clear(); removedLayers.clear(); - layers.add(TextLayerData()); + layers.add(TextLayerData( + textLayersBefore: layers.whereType().length, + )); setState(() {}); }, ), @@ -278,7 +280,9 @@ class _ShareImageEditorView extends State { } undoLayers.clear(); removedLayers.clear(); - layers.add(TextLayerData()); + layers.add(TextLayerData( + textLayersBefore: layers.whereType().length, + )); setState(() {}); }, child: MediaViewSizing(