Greasy Fork

bigscreen zoom subtitles

bigger subtitle in zoom conference

当前为 2025-05-22 提交的版本,查看 最新版本

// ==UserScript==
// @name         bigscreen zoom subtitles
// @description  bigger subtitle in zoom conference
// @match        https://*.zoom.us/*
// @grant        none
// @version      0.2
// @license      MIT
// @namespace https://greasyfork.org/users/1473309
// ==/UserScript==

function hideAvatarNameInShadowRoots() {
    function hideIn(root) {
        root.querySelectorAll('.video-avatar__avatar-name').forEach(e => { e.style.display = 'none'; });
        root.querySelectorAll('.zmu-data-selector-item__icon').forEach(e => { e.style.display = 'none'; });
        // Optional: Auch für den Titel
        // root.querySelectorAll('.video-avatar__avatar-title').forEach(e => e.style.display = 'none');
    }
    // Hauptdokument
    hideIn(document);
    // Alle offenen Shadow-Roots durchsuchen
    document.querySelectorAll('*').forEach(el => {
        if (el.shadowRoot) hideIn(el.shadowRoot);
    });
}
setInterval(hideAvatarNameInShadowRoots, 300);

function resizeSubtitleBoxAndText() {
    function resizeIn(root) {
        root.querySelectorAll('.live-transcription-subtitle__box').forEach(e => {
            e.style.width = '1200px';
            e.style.height = '400px';
            e.style.minWidth = '1200px';
            e.style.minHeight = '400px';
            e.style.maxWidth = '1200px';
            e.style.maxHeight = '400px';
            e.style.removeProperty('background');
            e.style.removeProperty('background-color');
            e.style.background = 'none';
            e.style.backgroundColor = 'transparent';

            // Eventlistener für Maus loslassen (Ende Drag)
            if (!e._zoomCustomListener) {
                e.addEventListener('mouseup', () => {
                    setTimeout(() => {
                        e.querySelectorAll('.live-transcription-subtitle__item, .live-transcription-subtitle__yellowitem').forEach(sub => {
                            sub.style.fontSize = '2em';
                        });
                    }, 10);
                });
                e._zoomCustomListener = true;
            }
        });

        root.querySelectorAll('#live-transcription-subtitle').forEach(e => {
            e.style.width = '100%';
            e.style.fontSize = '48px';
            e.style.lineHeight = '48px';
            e.style.maxWidth = 'none';
            e.style.minWidth = '0';

        });


        root.querySelectorAll('.live-transcription-subtitle__item, .live-transcription-subtitle__yellowitem').forEach(e => {
            e.style.fontSize = '48px';
            e.style.lineHeight = '48px';
            e.style.maxHeight = 'none';
            e.style.width = 'auto';
        });

        root.querySelectorAll('.live-transcription-subtitle').forEach(e => {
            e.style.width = 'auto';
        });

        root.querySelectorAll('.video-avatar__avatar').forEach(e => {
            e.style.removeProperty('background');
            e.style.removeProperty('background-color');
            e.style.background = 'none';
            e.style.backgroundColor = 'transparent';
        });


    }
    resizeIn(document);
    document.querySelectorAll('*').forEach(el => {
        if (el.shadowRoot) resizeIn(el.shadowRoot);
    });
}
setInterval(resizeSubtitleBoxAndText, 100);