Loading...
Searching...
No Matches
openshot::QtHtmlReader Class Reference

This class uses Qt libraries, to create frames with rendered HTML, and return openshot::Frame objects. More...

`#include <QtHtmlReader.h>`

Inheritance diagram for openshot::QtHtmlReader:

## Public Member Functions

void | Close () override
| Close Reader.
CacheBase * | GetCache () override
| Get the cache object used by this reader (always returns NULL for this object)
std::shared_ptr< openshot::Frame > | GetFrame (int64_t requested_frame) override
bool | IsOpen () override
| Determine if reader is open or closed.
std::string | Json () const override
| Generate JSON string of this object.
Json::Value | JsonValue () const override
| Generate Json::Value for this object.
std::string | Name () override
| Return the type name of the class.
void | Open () override
| Open Reader - which is called by the constructor automatically.
| QtHtmlReader ()
| Default constructor (blank text)
| QtHtmlReader (int width, int height, int x_offset, int y_offset, GravityType gravity, std::string html, std::string css, std::string background_color)
| Constructor for QtHtmlReader with all parameters.
void | SetJson (const std::string value) override
| Load JSON string into this object.
void | SetJsonValue (const Json::Value root) override
| Load Json::Value into this object.
Public Member Functions inherited from openshot::ReaderBase
void | DisplayInfo (std::ostream *out=&std::cout)
| Display file information in the standard output stream (stdout)
openshot::ClipBase * | ParentClip ()
| Parent clip object of this reader (which can be unparented and NULL)
void | ParentClip (openshot::ClipBase *new_clip)
| Set parent clip object of this reader.
| ReaderBase ()
| Constructor for the base reader, where many things are initialized.
virtual | ~ReaderBase ()=default

## Additional Inherited Members

Public Attributes inherited from openshot::ReaderBase
openshot::ReaderInfo | info
| Information about the current media file.
Protected Attributes inherited from openshot::ReaderBase
openshot::ClipBase * | clip
| Pointer to the parent clip instance (if any)
std::recursive_mutex | getFrameMutex
| Mutex for multiple threads.

## Detailed Description

This class uses Qt libraries, to create frames with rendered HTML, and return openshot::Frame objects.

Supports HTML/CSS subset available via Qt libraries, see: https://doc.qt.io/qt-5/richtext-html-subset.html

// Any application using this class must instantiate either QGuiApplication or QApplication
QApplication a(argc, argv);
// Create a reader to generate an openshot::Frame containing text
QtHtmlReader r(720, // width
480, // height
5, // x_offset
5, // y_offset
GRAVITY_CENTER, // gravity
"<b>Check out</b> this Text!", // html
"b { color: #ff0000 }", // css
"#000000" // background_color
);
r.Open(); // Open the reader
// Get frame number 1 from the video (in fact, any frame # you request will return the same frame)
std::shared_ptr<Frame> f = r.GetFrame(1);
// Now that we have an openshot::Frame object, lets have some fun!
f->Display(); // Display the frame on the screen
// Close the reader
r.Close();
openshot::QtHtmlReader
This class uses Qt libraries, to create frames with rendered HTML, and return openshot::Frame objects...
Definition QtHtmlReader.h:70
openshot::GRAVITY_CENTER
@ GRAVITY_CENTER
Align clip to the center of its parent (middle aligned)
Definition Enums.h:27

Definition at line 69 of file QtHtmlReader.h.

## Constructor & Destructor Documentation

## QtHtmlReader() [1/2]

QtHtmlReader::QtHtmlReader | ( |  | ) |

Default constructor (blank text)

Definition at line 28 of file QtHtmlReader.cpp.

## QtHtmlReader() [2/2]

QtHtmlReader::QtHtmlReader | ( | int | width,
|  | int | height,
|  | int | x_offset,
|  | int | y_offset,
|  | GravityType | gravity,
|  | std::string | html,
|  | std::string | css,
|  | std::string | background_color
| ) |  |

Constructor for QtHtmlReader with all parameters.

Parameters

  width | The width of the requested openshot::Frame (not the size of the text)
  height | The height of the requested openshot::Frame (not the size of the text)
  x_offset | The number of pixels to offset the text on the X axis (horizontal)
  y_offset | The number of pixels to offset the text on the Y axis (vertical)
  gravity | The alignment / gravity of the text
  html | The HTML you want to render / display
  css | The CSS you want to apply to style the HTML
  background_color | The background color of the frame image (valid values are a color string in #RRGGBB or #AARRGGBB notation, a CSS color name, or 'transparent')

Definition at line 35 of file QtHtmlReader.cpp.

## Member Function Documentation

## Close()

void QtHtmlReader::Close | ( |  | ) |

override virtual

Close Reader.

Implements openshot::ReaderBase.

Definition at line 129 of file QtHtmlReader.cpp.

Referenced by QtHtmlReader(), QtHtmlReader(), and SetJsonValue().

## GetCache()

CacheBase * openshot::QtHtmlReader::GetCache | ( |  | ) |

inline override virtual

Get the cache object used by this reader (always returns NULL for this object)

Implements openshot::ReaderBase.

Definition at line 102 of file QtHtmlReader.h.

## GetFrame()

std::shared_ptr< Frame > QtHtmlReader::GetFrame | ( | int64_t | requested_frame | ) |

override virtual

Get an openshot::Frame object for a specific frame number of this reader. All numbers return the same Frame, since they all share the same image data.

Returns
  The requested frame (containing the image)

Parameters

  requested_frame | The frame number that is requested.

Implements openshot::ReaderBase.

Definition at line 146 of file QtHtmlReader.cpp.

## IsOpen()

bool openshot::QtHtmlReader::IsOpen | ( |  | ) |

inline override virtual

Determine if reader is open or closed.

Implements openshot::ReaderBase.

Definition at line 112 of file QtHtmlReader.h.

## Json()

std::string QtHtmlReader::Json | ( |  | ) | const

override virtual

Generate JSON string of this object.

Implements openshot::ReaderBase.

Definition at line 176 of file QtHtmlReader.cpp.

## JsonValue()

Json::Value QtHtmlReader::JsonValue | ( |  | ) | const

override virtual

Generate Json::Value for this object.

Implements openshot::ReaderBase.

Definition at line 183 of file QtHtmlReader.cpp.

Referenced by Json().

## Name()

std::string openshot::QtHtmlReader::Name | ( |  | ) |

inline override virtual

Return the type name of the class.

Implements openshot::ReaderBase.

Definition at line 115 of file QtHtmlReader.h.

## Open()

void QtHtmlReader::Open | ( |  | ) |

override virtual

Open Reader - which is called by the constructor automatically.

Implements openshot::ReaderBase.

Definition at line 44 of file QtHtmlReader.cpp.

Referenced by QtHtmlReader(), QtHtmlReader(), and SetJsonValue().

## SetJson()

void QtHtmlReader::SetJson | ( | const std::string | value | ) |

override virtual

Load JSON string into this object.

Implements openshot::ReaderBase.

Definition at line 202 of file QtHtmlReader.cpp.

## SetJsonValue()

void QtHtmlReader::SetJsonValue | ( | const Json::Value | root | ) |

override virtual

Load Json::Value into this object.

Implements openshot::ReaderBase.

Definition at line 219 of file QtHtmlReader.cpp.

Referenced by SetJson().

The documentation for this class was generated from the following files:

- QtHtmlReader.h
- QtHtmlReader.cpp