Ho un QLabel
che contiene testo RTF.
Desidero estrarre solo il "testo" effettivo (visibile) da QLabel
e nessuno del codice per la formattazione.
Ho essenzialmente bisogno di una funzione simile al metodo '.toPlainText'
di altri Qt Widgets
.Ottieni testo normale da una QLabel con Rich text
non posso semplicemente chiamare .text()
e stringa manipolare via le tag html come suggerito in questa discussione Get plain text from QString with HTML tags, dal momento che la tornata QString
contiene tutte le <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
sciocchezze.
Come estrarre il testo normale?
(io sono aperto a qualsiasi metodo, anche se indiretta, ad esempio, le funzioni. Pre-esistenti che convertire HTML in testo normale)
Grazie!
Spec:
pitone 2.7.2
PyQt4
Windows 7
Non l'ho provato da solo, ma sembra che 'QTextCodec' sia quello che ti serve (documentazione su http://developer.qt.nokia.com/doc/qt-4.8/qtextcodec.html). – TonyK
RTF non sembra essere una codifica supportata (a meno che manchi qualcosa). Non importa, ho trovato un work-around disordinato –
Non puoi semplicemente trattare Qt Rich Text come html? Il documento Qt qui (http://doc.qt.nokia.com/4.7-snapshot/qml-text.html) dice: "Il rich text è definito usando il markup in stile HTML." – TonyK