Open siberianbearr opened 6 years ago
Thanks @siberianbearr for detail analysis. Can you suggest some idea/logic how to implement this by keeping ImageView
in internal representation ?
hi @burhanrashid52 , you can check this repo https://github.com/siwangqishiq/ImageEditor-Android this is not mine :), however they have pretty good job scaling sticker and text to real resolution image using matrix transformation.
While the project is in chinese, some part of the demo contain english translations.
hi @burhanrashid52 i've done some quick combination between your project and https://github.com/siwangqishiq/ImageEditor-Android so that i can save a big resolution image with stickers. Check it out at: https://github.com/fandygotama-tokobagus/PhotoEditor, please note that this is not 100% done as the project still missing some feature like e.g.: undo/redo brush, typeface and other things :)
This seems like a real deal-breaker. Any progress on this issue @burhanrashid52 ?
Nop @sepehr1014 I have labelled as help wanted. @fandygotama-tokobagus Did you resolve this issue?
@burhanrashid52 i think whether can we draw sticker on orignal bitmap ?
hi @burhanrashid52 , sorry i didn't get your mention since i changed my github username :(. I haven't gotten chance to finish the project, however the calculation already done on my repo and its working, you can save the real image with sticker on it. I will find some time to finish the project and do PR
@gotamafandy I was looking for someone to fix this. I am waiting for your PR.
Guys any update on this issue? i checked your library and what i understand is that you take the view and convert it into bitmap and save it. That's why actual image quality drops down. i thought one solution for it: What if we keep the original image bitmap as a backup and then perform all operations on image view container and when click save button. Then convert all the added stickers and text into bitmap and then draw those bitmaps on orignal bitmap. In this way, the quality will not decrease i already tried it. But the problem is how do we re-position those texts and emojis on the original bitmap? As original bitmap has different resolution and the one on which user entered emojis and text was of different size.
Hummm... This issue is very important for photo editor. But Maybe We need native to implements this feature. Have anyone help?
How about using a custom draw to scale down the imageView
display size, so we are still painting on the full size.
I found a implementation here.
https://stackoverflow.com/questions/12169905/zoom-and-panning-imageview-android
How about using a custom draw to scale down the
imageView
display size, so we are still painting on the full size. I found a implementation here. https://stackoverflow.com/questions/12169905/zoom-and-panning-imageview-android
Where you able to make it work ? @KimiChiu
How about using a custom draw to scale down the
imageView
display size, so we are still painting on the full size. I found a implementation here. https://stackoverflow.com/questions/12169905/zoom-and-panning-imageview-androidAre you able to make it work ? @KimiChiu
It depends, I have 7 ongoing projects.
it's an easier way to start.
I tried a workaround which is to put a HorizontalScrollView
as a parent but had no luck.
@burhanrashid52 Please sir add crop feature in your repository ASAP just like in https://github.com/siwangqishiq/ImageEditor-Android
Is this problem solved in new version 2.0.0?
No. Scaling the image is a hard problem to solve. The 2.0.0 version is just a Kotlin conversation.
this worked for me https://github.com/tauseefrehman2/pinch-to-zoom-linear-layout (when using a big image it puts it half of screen for some reason though, and when zooming if you release the finger you touched the screen first with first it jumps cuz it mixes up your fingers or something so if anyone knows how to fix that that would be great) edit: i changed a few things and now it works perfectly
Here is my suggestion for preventing downscaling of images (which I successfully got working):
Since this library is generating bitmaps from displayed views itself, then manipulating views seems the only solution (TO ME) without drastically changing the underlying library code. Since the library is migrated to kotlin, I could not try and implement changes in the library itself as I am yet to learn kotlin 😢
Here is my suggestion for preventing downscaling of images (which I successfully got working):
1. Wrap the photoeditorview inside a horizontal scroll view with height&width wrap content 2. setScaleX and setScaleY on photoViewEditor view with scale factor according to your needs 3. calculate and set the amount of scroll needed to center the view and disable touch interception on scrollview
Since this library is generating bitmaps from displayed views itself, then manipulating views seems the only solution (TO ME) without drastically changing the underlying library code. Since the library is migrated to kotlin, I could not try and implement changes in the library itself as I am yet to learn kotlin 😢
Jave is interop with Kotlin. So you can create a separate class in Java where this scaling logic resides and return back the scaled image to the Kotlin method by delegating it to the java method. Then we can convert the Java class to Kotlin if more logic is required in the future.
PhotoEditor.getEmojis(getActivity()); i dont get this method getEmojis() plz help me how to resolve this
I came across two problems while working with the library: