Tôi có một số QLabel
có chứa văn bản đa dạng thức.
Tôi chỉ muốn trích xuất văn bản thực tế (hiển thị) 'từ QLabel
và không có mã nào để định dạng.
Về cơ bản, tôi cần một hàm tương tự với phương thức '.toPlainText'
của Qt Widgets
khác.Nhận văn bản thuần tuý từ một nhãn hiệu có chứa văn bản có dạng là
Tôi không thể chỉ đơn giản gọi số .text()
và chuỗi thao tác các thẻ html như được đề xuất trong chủ đề này Get plain text from QString with HTML tags, vì trả lại QString
chứa tất cả các số <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">
vô nghĩa.
Làm cách nào để trích xuất văn bản thuần túy?
(Tôi mở cửa cho phương pháp bất kỳ, thậm chí nếu như gián tiếp; chức năng Pre-hiện chuyển đổi html để văn bản đơn giản.)
Cảm ơn!
Specs:
python 2.7.2
PyQt4
Windows 7
Tôi chưa tự mình thử, nhưng có vẻ như 'QTextCodec' là những gì bạn cần (tài liệu tại http://developer.qt.nokia.com/doc/qt-4.8/qtextcodec.html). – TonyK
RTF dường như không phải là một mã hóa được hỗ trợ (trừ khi tôi thiếu một cái gì đó). Không sao, tôi đã tìm thấy một công việc lộn xộn xung quanh –
Bạn không thể chỉ xử lý Văn bản có dạng Qt dưới dạng html? Tài liệu Qt tại đây (http://doc.qt.nokia.com/4.7-snapshot/qml-text.html) cho biết: "Văn bản đa dạng thức được xác định bằng cách sử dụng đánh dấu kiểu HTML". – TonyK