2016-04-01 21 views
0

Wie Sie eine Suche und ersetzen Sie eine Fettschrift kursiv über das App-Skript für Google-Dokumente. Beachten Sie, dass es nur die fett gedruckten und kursiven und nicht den gesamten Text ersetzen muss.Ersetzen Sie fett in Kursiv in Google Docs mit Apps Skript

Sagen. Ein Beispieltext

Ein schneller brauner Fuchs springt über einen faulen Hund ein schneller brauner Fuchs springt über einen faulen Hund ein schneller brauner Fuchs springt über einen faulen Hund.

+0

Was haben Sie versucht? Was genau läuft schief? Haben Sie Fehler? Was sind diese Fehler? Was haben Sie versucht, um diese Fehler zu beheben? Was ist passiert, als du das getan hast? Denken Sie daran, diese Dinge zu berücksichtigen, wenn Sie Ihre Frage stellen. Befolgen Sie diese Anleitung, um sicherzustellen, dass Ihre Fragen von hoher Qualität sind: https://stackoverflow.com/help/how-to-ask –

Antwort

0

Dies ist etwas peinlich, weil es nichts wie "Textknoten in Fettdruck" in Google Dokumente gibt; Die Text element hat nicht viel interne Struktur. Die Lösung scheint darin zu bestehen, ihre Zeichen zu überfliegen und jeden fett zu testen. Wenn die Bereiche mit fettem Text in der Schleife identifiziert werden, werden sie mit der Methode setItalic kursiv gesetzt. Am Ende wird fett aus dem gesamten Text entfernt.

function bold2italic() { 
    var doc = DocumentApp.getActiveDocument(); 
    var text = doc.getBody().editAsText(); 
    var startBold = 0; 
    var bold = false; 
    for (var i = 0; i < text.getText().length; i++) { 
    if (text.isBold(i) && !bold) { 
     startBold = i; 
     bold = true; 
    } 
    else if (!text.isBold(i) && bold) { 
     bold = false; 
     text.setItalic(startBold, i-1, true); 
    } 
    } 
    if (bold) { 
    text.setItalic(startBold, i-1, true); 
    } 
    text.setBold(false); 
} 
Verwandte Themen