Add a glitch text command

This commit is contained in:
Loren Burkholder 2024-02-26 19:05:37 -05:00
parent 0649bc342d
commit 99bbe26609
No known key found for this signature in database
GPG key ID: AB62CB312CEC2BBC
5 changed files with 36 additions and 0 deletions

View file

@ -16,6 +16,7 @@
#include <QGuiApplication>
#include <QImageReader>
#include <QProcessEnvironment>
#include <QRandomGenerator64>
#include <QScreen>
#include <QSettings>
#include <QStringBuilder>
@ -2012,3 +2013,25 @@ utils::removeExpiredEvents()
ApplyEventExpiration::next(std::move(asus));
}
QString
utils::glitchText(const QString &text)
{
static const QList<QChar> diacritics = []() {
QList<QChar> ret;
for (wchar_t c = u'\u0300'; c <= u'\u036f'; ++c)
ret.append(QChar(c));
return ret;
}();
QString result;
for (int i = 0; i < text.size(); ++i) {
result.append(text.at(i));
if (QRandomGenerator64::global()->bounded(0, 100) >= 25)
result.append(
diacritics.at(QRandomGenerator64::global()->bounded(0, diacritics.size())));
}
return result;
}