forked from omni/OmniCards
feat: added icons for cards
This commit is contained in:
@@ -2,12 +2,19 @@ package ru.omni_devel.cards
|
||||
|
||||
import android.content.Context
|
||||
import android.graphics.Bitmap
|
||||
import android.graphics.BitmapFactory
|
||||
import android.os.LocaleList
|
||||
import androidx.compose.ui.graphics.ImageBitmap
|
||||
import androidx.compose.ui.graphics.asAndroidBitmap
|
||||
import com.google.android.gms.wearable.Wearable
|
||||
import com.google.zxing.BarcodeFormat
|
||||
import com.google.zxing.EncodeHintType
|
||||
import com.google.zxing.MultiFormatWriter
|
||||
import com.journeyapps.barcodescanner.BarcodeEncoder
|
||||
import org.json.JSONObject
|
||||
import java.io.ByteArrayOutputStream
|
||||
import android.util.Base64
|
||||
import androidx.compose.ui.graphics.asImageBitmap
|
||||
|
||||
fun generateCode(value: String, format: BarcodeFormat): Bitmap {
|
||||
val writer = MultiFormatWriter()
|
||||
@@ -81,6 +88,36 @@ fun getLanguage(context: Context): String {
|
||||
return languageCode
|
||||
}
|
||||
|
||||
fun selectTemplateNameViaLanguage(names: LinkedHashMap<String, String>, language: String): String {
|
||||
fun selectItemNameViaLanguage(names: LinkedHashMap<String, String>, language: String): String {
|
||||
return names[language] ?: names.values.firstOrNull() ?: "???"
|
||||
}
|
||||
|
||||
fun jsonObjectToMap(obj: JSONObject): LinkedHashMap<String, String> {
|
||||
val map = LinkedHashMap<String, String>()
|
||||
val keys = obj.keys()
|
||||
|
||||
while (keys.hasNext()) {
|
||||
val key = keys.next()
|
||||
map[key] = obj.getString(key)
|
||||
}
|
||||
|
||||
return map
|
||||
}
|
||||
|
||||
fun imageBitmapToBase64(imageBitmap: ImageBitmap): String {
|
||||
val bitmap = imageBitmap.asAndroidBitmap()
|
||||
val outputStream = ByteArrayOutputStream()
|
||||
|
||||
bitmap.compress(Bitmap.CompressFormat.PNG, 100, outputStream)
|
||||
|
||||
val byteArray = outputStream.toByteArray()
|
||||
|
||||
return Base64.encodeToString(byteArray, Base64.DEFAULT)
|
||||
}
|
||||
|
||||
fun base64ToImageBitmap(base64String: String): ImageBitmap {
|
||||
val decodedBytes = Base64.decode(base64String, Base64.DEFAULT)
|
||||
val bitmap = BitmapFactory.decodeByteArray(decodedBytes, 0, decodedBytes.size)
|
||||
|
||||
return bitmap.asImageBitmap()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user