Screenshot is blackened
I am trying to share the image which is in Uint8List format. The image is basically a white container with a black text in it. But when the Image is shared, the background somehow becomes black and the image is not visible as the text is already black.
@mnshaikna could you provide a small code sample which reproduces the issue? The description above is not enough to clear the things up.
I face the same problem. When I use your example code:
final ByteData bytes = await rootBundle.load('assets/symbols/hand.png'); await WcFlutterShare.share( sharePopupTitle: 'share faver', fileName: 'share.png', mimeType: 'image/png', bytesOfFile: bytes.buffer.asUint8List());
and share that within an instagram message, all I get is a black image. Sharing the same image via Threema, the image is displayed perfectly fine. :)
Even i am facing the same problem.
While sharing an image file with Uint8List format gives a blackened image.
I have already added the question to the Stack-Overflow
Can anyone suggest a workaround ?
@gisinator did your code is working now? Can you suggest a solution?
Thanks.
I solved the problem by wrapping my widget/Image which is to be shared with a Container and providing color to that container.
please find the answer with an example here https://stackoverflow.com/questions/59169393/flutter-image-share-using-flutter-plugin-giving-me-a-blackend-screen/59405251#59405251
@kaxp thanks your tip worked for me. i also wrapped the container with a RepaintBoundary.
you have to change your widget background color to white or any color not black
backgroundColor: Colors.white, it works for me
My app implements both dark and light themes. In dark theme, screenshot image appears as expected without including the white background container; but in light theme, screenshot image appears blackened. If I include the container with white background, the blackened screenshot switches between the themes --> screenshot image now appears okay in light theme and becomes blackened in dark theme.
My work around is to check the current theme and use Colors.transparent for dark theme and Colors.white for light theme as below. This works in whatever theme mode.
Screenshot(
controller: screenshotController,
child: Container(
color: isDarkModeEnabled
? Colors.transparent
: Colors.white,
child: WidgetToBeShared(),
)
)
I am trying to share the image which is in Uint8List format. The image is basically a white container with a black text in it. But when the Image is shared, the background somehow becomes black and the image is not visible as the text is already black.
Any Suggestions
you have to change your widget background color to white or any color not black
backgroundColor: Colors.white, it works for me
not working