capture_and_share 0.0.1+2

  • Readme
  • Changelog
  • Example
  • Installing
  • 75

capture_and_share #

A Flutter plugin to take a screenshot using native code and share it via the platform's share image dialog. You can specify width, height and x, y position of the cropped screenshot. For now this plugin only works on ios.

Example #

You can check example code in example folder.


import 'package:capture_and_share/capture_and_share.dart';

body: Center(
  child: RaisedButton(
    onPressed: () {
      CaptureAndShare.shareIt(
        sizeWidth: 300,
        sizeHeight: 300,
        xMode: 'center',
        yMode: 'center',
      );
    },
    child: Text('Click'),
  )

Usage #

It's only works on IOS only for now. I will come back to implement Android code soon.

iOS #

PropertyDescriptionType
sizeWidthdesired cropped area width. if set this to 0 means whole screen width. Default is 0.double
sizeHeightdesired cropped area height. if set this to 0 means whole screen height. Default is 0.double
xModeHorizontal cropped mode. You can choose left, center or right for xMode. Default is center.String
yModeVertical cropped mode. You can choose top, center or bottom for yMode. Default is center.String

Credits #

thanks you screenshot_share_image (https://pub.dev/packages/screenshot_share_image) for inspiring me.

0.0.1+2 - 2019-12-24 #

  • Update plugin description in pubspec.yml

0.0.1+1 - 2019-12-24 #

  • Update plugin description in pubspec.yml

0.0.1 - 2019-12-24 #

  • Plugin initial release.

example/lib/main.dart

import 'package:flutter/material.dart';
import 'package:capture_and_share/capture_and_share.dart';

void main() => runApp(MyApp());

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        resizeToAvoidBottomInset: false,
        resizeToAvoidBottomPadding: false,
        body: Container(
          color: Colors.red,
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: <Widget>[
              Container(
                height: 200,
                width: 200,
                color: Colors.blue,
              ),
              Container(
                height: 100,
                width: 300,
                color: Colors.green,
              ),
              Container(
                height: 150,
                width: 400,
                color: Colors.pink,
              ),
              Center(
                child: RaisedButton(
                  onPressed: () {
                    CaptureAndShare.shareIt(
                      sizeWidth: 300,
                      sizeHeight: 300,
                      xMode: 'center',
                      yMode: 'center',
                    );
                  },
                  child: Text('Click'),
                ),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

Use this package as a library

1. Depend on it

Add this to your package's pubspec.yaml file:


dependencies:
  capture_and_share: ^0.0.1+2

2. Install it

You can install packages from the command line:

with Flutter:


$ flutter pub get

Alternatively, your editor might support flutter pub get. Check the docs for your editor to learn more.

3. Import it

Now in your Dart code, you can use:


import 'package:capture_and_share/capture_and_share.dart';
  
Popularity:
Describes how popular the package is relative to other packages. [more]
54
Health:
Code health derived from static analysis. [more]
99
Maintenance:
Reflects how tidy and up-to-date the package is. [more]
90
Overall:
Weighted score of the above. [more]
75
Learn more about scoring.

We analyzed this package on Mar 27, 2020, and provided a score, details, and suggestions below. Analysis was completed with status completed using:

  • Dart: 2.7.1
  • pana: 0.13.6
  • Flutter: 1.12.13+hotfix.8

Health issues and suggestions

Document public APIs. (-1 points)

4 out of 4 API elements have no dartdoc comment.Providing good documentation for libraries, classes, functions, and other API elements improves code readability and helps developers find and use your API.

Maintenance suggestions

Package is pre-v0.1 release. (-10 points)

While nothing is inherently wrong with versions of 0.0.*, it might mean that the author is still experimenting with the general direction of the API.

Dependencies

Package Constraint Resolved Available
Direct dependencies
Dart SDK >=2.1.0 <3.0.0
flutter 0.0.0
Transitive dependencies
collection 1.14.11 1.14.12
meta 1.1.8
sky_engine 0.0.99
typed_data 1.1.6
vector_math 2.0.8
Dev dependencies
flutter_test