Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Thriving in Android Development Using Kotlin

You're reading from   Thriving in Android Development Using Kotlin A project-based guide to using the latest Android features for developing production-grade apps

Arrow left icon
Product type Paperback
Published in Jul 2024
Publisher Packt
ISBN-13 9781837631292
Length 410 pages
Edition 1st Edition
Languages
Tools
Arrow right icon
Author (1):
Arrow left icon
Gema Socorro Rodríguez Gema Socorro Rodríguez
Author Profile Icon Gema Socorro Rodríguez
Gema Socorro Rodríguez
Arrow right icon
View More author details
Toc

Table of Contents (15) Chapters Close

Preface 1. Part 1:Creating WhatsPackt, a Messaging App
2. Chapter 1: Building the UI for Your Messaging App FREE CHAPTER 3. Chapter 2: Setting Up WhatsPackt’s Messaging Abilities 4. Chapter 3: Backing Up Your WhatsPackt Messages 5. Part 2:Creating Packtagram, a Photo Media App
6. Chapter 4: Building the Packtagram UI 7. Chapter 5: Creating a Photo Editor Using CameraX 8. Chapter 6: Adding Video and Editing Functionality to Packtagram 9. Part 3:Creating Packtflix, a Video Media App
10. Chapter 7: Starting a Video Streaming App and Adding Authentication 11. Chapter 8: Adding Media Playback to Packtflix with ExoPlayer 12. Chapter 9: Extending Video Playback in Your Packtflix App 13. Index 14. Other Books You May Enjoy

Adding photo-editing functionalities

There are multiple operations that we can enable for the user to edit and modify their images: we can allow them to crop, resize, and rotate the image, as well as adjust the brightness and contrast, apply filters, or add text overlays.

As part of this chapter, we are going to implement two operations: a black-and-white filter and a text overlay.

Adding filters

Creating filters over an existing image is as easy as modifying the values of the bitmap that contains the image. There are several well-known filters, such as sepia, vintage, and black and white. As an example, we are going to implement the black and white filter, like so:

@Composable
fun BlackAndWhiteFilter(
    imageUri: Uri,
    modifier: Modifier = Modifier
) {
    var isBlackAndWhiteEnabled by remember {
    mutableStateOf(false) }
    val localContext = LocalContext.current...
lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime
Banner background image