QTextDocumentFragment — PyQt Documentation v6.9.0 (original) (raw)
PyQt6.QtGui.QTextDocumentFragment
Description¶
The QTextDocumentFragment class represents a piece of formatted text from a QTextDocument.
A QTextDocumentFragment is a fragment of rich text, that can be inserted into a QTextDocument. A document fragment can be created from a QTextDocument, from a QTextCursor’s selection, or from another document fragment. Document fragments can also be created by the static functions, fromPlainText() and fromHtml().
The contents of a document fragment can be obtained as raw text by using the toRawText() function, as ASCII with toPlainText(), as HTML with toHtml(), or as Markdown with toMarkdown().
Methods¶
__init__()
Constructs an empty QTextDocumentFragment.
__init__(QTextDocument)
Converts the given document into a QTextDocumentFragment. Note that the QTextDocumentFragment only stores the document contents, not meta information like the document’s title.
__init__(QTextCursor)
Creates a QTextDocumentFragment from the _cursor_’s selection. If the cursor doesn’t have a selection, the created fragment is empty.
__init__(QTextDocumentFragment)
Copy constructor. Creates a copy of the other fragment.
@staticmethod
fromHtml(Optional[str], resourceProvider: QTextDocument = None) → QTextDocumentFragment
Returns a QTextDocumentFragment based on the arbitrary piece of HTML in the given text. The formatting is preserved as much as possible; for example, “bold” will become a document fragment with the text “bold” with a bold character format.
If the provided HTML contains references to external resources such as imported style sheets, then they will be loaded through the resourceProvider.
@staticmethod
fromMarkdown(Optional[str], features: MarkdownFeature = MarkdownDialectGitHub) → QTextDocumentFragment
Returns a QTextDocumentFragment based on the given markdown text with the specified features. The default is GitHub dialect.
The formatting is preserved as much as possible; for example, \*\*bold\*\*
will become a document fragment containing the text “bold” with a bold character style.
Note: Loading external resources is not supported.
@staticmethod
fromPlainText(Optional[str]) → QTextDocumentFragment
Returns a document fragment that contains the given plainText.
When inserting such a fragment into a QTextDocument the current char format of the QTextCursor used for insertion is used as format for the text.
isEmpty() → bool
Returns true
if the fragment is empty; otherwise returns false
.
toHtml() → str
Returns the contents of the document fragment as HTML.
toMarkdown(features: MarkdownFeature = MarkdownDialectGitHub) → str
Returns the contents of the document fragment as Markdown, with the specified features. The default is GitHub dialect.
toPlainText() → str
This function returns the same as toRawText(), but will replace some unicode characters with ASCII alternatives. In particular, no-break space (U+00A0) is replaced by a regular space (U+0020), and both paragraph (U+2029) and line (U+2028) separators are replaced by line feed (U+000A). If you need the precise contents of the document, use toRawText() instead.
toRawText() → str
Returns the document fragment’s text as raw text (i.e. with no formatting information).