flutter_image_converter 0.3.4 flutter_image_converter: ^0.3.4 copied to clipboard
Ultimative converter between Dart & Flutter images: ui, widgets, package image, ImageProvider, raw bytes, Base64 string. Works in any direction.
Flutter Image Converter #
Well-tested and easy-to-use Dart & Flutter image transformer package: ui, widgets, image, ImageProvider, bytes, etc. Works in any direction as an extension. You no longer have to worry about writing code to convert images in different formats. Feel free to use it in your awesome project.
Share some ❤️ and star repo to support the Flutter Image Converter.
If you write an article about FlutterImageConverter or any of these packages, let me know and I'll post the URL of the article in the README 🤝
🚀 Usage #
Raw bytes from File to Widget Image #
File('1.jpg').widgetImage
Can detect all formats from the package image.
ImageProvider to UI Image #
await AssetImage('1.jpg').uiImage
Package Image to Widget Image #
Image(...).widgetImage
Any formatted raw bytes to Widget Image #
bytes.widgetImage
File to PNG raw bytes #
File('nature.webp').pngUint8List
File to BMP raw bytes #
File('nature.webp').bmpUint8List
ImageProvider to PNG raw bytes #
AssetImage('nature.webp').pngUint8List
Supports the image providers:
AssetImage
FileImage
MemoryImage
NetworkImage
- any providers from pub.dev inherited from
ImageProvider
See folders example
and test
for more use cases.
🔄 Available Converters #
import 'dart:ui' as ui;
import 'package:flutter/widgets.dart' as widget;
import 'package:image/image.dart' as image;
extension name | image.Image | ui.Image | widget.Image | ImageProvider | Uint8List | ||
---|---|---|---|---|---|---|---|
image.Image | imageImage |
✅ | ✅ | ✅ | ✅ | ||
ui.Image | uiImage |
✅ | ✅ | ✅ | ✅ | ||
widget.Image | widgetImage |
✅ | ✅ | ✅ | ✅ | ||
ImageProvider | imageProvider |
✅ | ✅ | ✅ | ✅ | ||
Uint8List | uint8List |
✅ | ✅ | ✅ | ✅ |
📸 Screenshots #
💛 Thanks #
While working on projects, I meet people who make the project better with their outsider and professional view. I want to write down their names here..... and I'd be happy to add your name as well.
⭐ eibaan
✨ What's New #
Look at changelog.
👋 Welcome #
If you encounter any problems, feel free to open an issue. If you feel the package is missing a feature, please raise a ticket on Github and I'll look into it. Requests and suggestions are warmly welcome. Danke!
Contributions are what make the open-source community such a great place to learn, create, take a new skills, and be inspired.
If this is your first contribution, I'll leave you with some of the best links I've found: they will help you get started or/and become even more efficient.
- Guide to Making a First Contribution. You will find the guide in your native language.
- How to Contribute to Open Source. Longread for deep diving for first-timers and for veterans.
- Summer Guide from Google.
- CodeTriangle. Free community tools for contributing to Open Source projects.
The package FlutterImageConverter is open-source, stable and well-tested. Development happens on GitHub. Feel free to report issues or create a pull-request there.
General questions are best asked on StackOverflow.
And here is a curated list of how you can help:
- Documenting the undocumented. Whenever you come across a class, property, or method within our codebase that you're familiar with and notice it lacks documentation, kindly spare a couple of minutes to jot down some helpful notes for your fellow developers.
- Refining the code. While I'm aware it's primarily my responsibility to refactor the code, I wholeheartedly welcome any contributions you're willing to make in this area. Your insights and improvements are appreciated!
- Constructive code reviews. Should you discover a more efficient approach to achieve something, I'm all ears. Your suggestions for enhancement are invaluable.
- Sharing your examples. If you've experimented with our use cases or have crafted some examples of your own, feel free to add them to the
example
directory. Your practical insights can enrich our resource pool. - Fix typos/grammar mistakes.
- Report bugs and scenarios that are difficult to implement.
- Implement new features by making a pull-request.
✅ TODO (perhaps) #
Once you start using the FlutterImageConverter, it will become easy to choose the functionality to contribute. But if you already get everything you need from this package but have some free time, let me write here what I have planned:
- Explane
Image
,ImageProvider
, etc. 1 - Check out the Web platform.
- Detect formats provided
instantiateImageCodec
. - Converters to
File
?fileBmpUint8ListSync
,filePngUint8ListSync
... Auto extension. - SVG?
- IconData?
- Transform images to any formats?
It's just a habit of mine: writing down ideas that come to mind while working on a project. I confess that I rarely return to these notes. But now, hopefully, even if you don't have an idea yet, the above notes will help you choose the suitable "feature" and become a contributor to the open-source community.
Ready for 🪙
Created with ❤️