小编Dan*_*hle的帖子

Python Mutagen添加图像封面不起作用

我尝试用mutagen编辑mp3标签.现在我让它设置像标题一样的标签.但APIC仍然无法运作.

我的代码:

from mutagen.mp3 import MP3
from mutagen.id3 import ID3, APIC, TT2, TPE1, TRCK, TALB, USLT, error
# ID3 info:
# APIC: picture
# TIT2: title
# TPE1: artist
# TRCK: track number
# TALB: album
# USLT: lyric

pic_file = 'cover.jpg' # pic file
audio = MP3('song.mp3', ID3=ID3)
try:
    audio.add_tags()
except:
    pass
audio.tags.add(APIC(
    encoding=3,
    mime='image/jpeg',
    type=3,
    desc='Cover Picture',
    data=open(pic_file, encoding='ISO-8859-1').read().encode()
))
audio.tags.add(TT2(encoding=3, text='title'))
audio.tags.add(TALB(encoding=3, text='album'))
#audio.tags.add(TPE1(encoding=3, text=item['artist'].decode('utf-8')))
#audio.tags.add(TRCK(encoding=3, text=str(track_num).decode('utf-8')))
#audio.tags.add(USLT(encoding=3, lang=u'eng', desc=u'desc', text=item['lyric'].decode('utf-8')))
audio.save()
ID3('song.mp3').save(v2_version=3)
Run Code Online (Sandbox Code Playgroud)

我怎样才能让它发挥作用?

谢谢 :)

编辑:搞定了: …

python cover image mutagen

10
推荐指数
1
解决办法
1297
查看次数

Jetpack compose 上的模糊工具栏背景

Jetpack Compose 中有该Modifier.blur()方法。但它模糊了它所应用的容器的内容。

我有一个类似的结构:

Box {
    Toolbar()
    Content()
}
Run Code Online (Sandbox Code Playgroud)

工具栏位于 z 轴内容上方。我想给工具栏一些不透明度,并模糊工具栏后面内容中的所有内容。

如何实现这一目标?

android kotlin android-jetpack-compose

9
推荐指数
1
解决办法
690
查看次数

如何使用 MaterialComponents 正确显示 DatePickerDialog?

我正在使用 material.io 中的 MaterialComponents for Android。

我有两个主题(光明和黑暗)。我想显示一个 DatePickerDialog。但这是结果: 在此处输入图片说明

这是我如何显示对话框的代码:

private fun selectDeadline() {
    val dialog = DateDialog()
    val bundle = Bundle()
    bundle.putInt("themeId", themeId)
    dialog.arguments = bundle
    dialog.show(supportFragmentManager, "")
}

class DateDialog : DialogFragment(), DatePickerDialog.OnDateSetListener {

    override fun onCreateDialog(savedInstanceState: Bundle?): Dialog {
        val date = DateTime.now()
        val themeId = arguments!!.getInt("themeId")
        return DatePickerDialog(activity!!, themeId, this, date.year, date.monthOfYear - 1, date.dayOfMonth)
    }

    override fun onDateSet(view: DatePicker?, year: Int, month: Int, day: Int) {
        deadlineTitle.text = "$year, $month, $day"
    }
}
Run Code Online (Sandbox Code Playgroud)

最后但并非最不重要的是,我的主题:

<resources>

<!-- …
Run Code Online (Sandbox Code Playgroud)

android kotlin material-components

6
推荐指数
1
解决办法
1037
查看次数

Windows上的Kotlin本机libcurl示例

我正在尝试从JetBrains学习Kotlin Native如何使用本教程:https : //kotlinlang.org/docs/tutorials/native/interop-with-c.html

但是这些教程仅适用于macOS和Linux。有时我使用Windows计算机,但我想知道它在那里的工作方式。

如何在Windows中添加libcurl库,如何将其添加到libcurl.def文件中?

在任何地方都没有解释。

kotlin kotlin-native

5
推荐指数
1
解决办法
410
查看次数

如何在jetpack compose中删除文本基线下方的空间?

目前我得到这个:

在此输入图像描述

但我想要这样的东西:

在此输入图像描述

而且“50”和“min”中的文本也应该与顶部对齐。

我的代码:

Row(verticalAlignment = Alignment.Bottom) {
    Text(
        text = "18",
        color = MaterialTheme.colors.primaryVariant,
        fontSize = 60.sp,
        modifier = Modifier
            .weight(1f).height(62.dp),
        textAlign = TextAlign.End,
    )
    Text(
        text = "hrs",
        modifier = Modifier.weight(1f).height(16.dp),
    )
}
Row(verticalAlignment = Alignment.Top) {
    Text(
        text = "50",
        color = MaterialTheme.colors.primaryVariant,
        fontSize = 28.sp,
        modifier = Modifier.weight(1f).height(30.dp).align(Alignment.Top),
        textAlign = TextAlign.End,
    )
    Text("min", modifier = Modifier.weight(1f))
}
Run Code Online (Sandbox Code Playgroud)

正如您在我的代码中看到的,我当前通过使用 height 属性解决了这个问题。但是对于align top就不起作用了,感觉有点不对劲。有更好的方法让它发挥作用吗?

android kotlin android-jetpack android-jetpack-compose

5
推荐指数
1
解决办法
3506
查看次数

Angular Route Start 和 Route End 事件

如何访问路由开始和路由结束事件?我想在路由和加载数据时显示进度条。

有人可以告诉我这是如何工作的吗?

typescript angular

3
推荐指数
1
解决办法
2281
查看次数

Android RecyclerView 滑动删除,仅在第一个元素上绘制图标

一切都运转良好,但有一件事并没有真正发挥作用。删除图标仅呈现在回收器视图列表的第一个元素上,如图所示。

在此输入图像描述 在此输入图像描述

这是我的 ItemTouchHelper 类的代码:

class ItemSwipeCallback(val context: Context) : ItemTouchHelper.Callback() {
    private val listeners = ArrayList<OnItemSwipe>()

    private val paint = Paint()
    val theme = context.themeId
    val icon = ContextCompat.getDrawable(context, R.drawable.ic_delete_filled_white_24dp)!!

    override fun onMove(
        recyclerView: RecyclerView,
        viewHolder: RecyclerView.ViewHolder,
        target: RecyclerView.ViewHolder): Boolean {

        return true
    }

    override fun getMovementFlags(recyclerView: RecyclerView, viewHolder: RecyclerView.ViewHolder): Int {
        val direction = context.sharedPreferences.getInt(Preferences.SWIPE_DIRECTION, Preferences.SWIPE_VALUE_RIGHT)

        return when (direction) {
            Preferences.SWIPE_VALUE_RIGHT -> makeMovementFlags(0, ItemTouchHelper.RIGHT)
            Preferences.SWIPE_VALUE_LEFT -> makeMovementFlags(0, ItemTouchHelper.LEFT)
            else -> makeMovementFlags(0, ItemTouchHelper.RIGHT)
        }
    }

    override fun onSwiped(viewHolder: RecyclerView.ViewHolder, direction: …
Run Code Online (Sandbox Code Playgroud)

android kotlin android-recyclerview

3
推荐指数
1
解决办法
6518
查看次数

fastify中修改或保存request对象中的数据

我使用 Nestjs 构建 REST API。

我有一个中间件,它从 Redis 缓存加载数据,并将其保存在请求对象中,以便在控制器函数中访问它。

如果我使用express作为引擎,它可以工作,但是如果使用fastify,它就不起作用。数据在控制器功能中未定义。

代码如下:

function mymiddleware(req, res, next) => {
    req.data = {...};
    next();
};
Run Code Online (Sandbox Code Playgroud)

javascript node.js express typescript nestjs

3
推荐指数
1
解决办法
5045
查看次数

JetBrains Rider 不显示 C# WPF 异常

我在 Rider 中使用 C# 编写了一个 WPF 应用程序。

如果我的程序崩溃,它不会在“运行”选项卡中显示异常。

只有当我调试我的程序时,它才会向我显示这个未格式化的输出: 在此处输入图片说明

有没有办法像 Java 和 Intellij Idea 一样显示异常输出(和 Console.WriteLine 输出)?

c# wpf jetbrains-ide rider

1
推荐指数
1
解决办法
970
查看次数