efl.ethumb.Ethumb Class

class efl.ethumb.Ethumb

Bases: object

Ethumb thumbnail generator.

New in version 1.17.

Use this class to generate thumbnails in the local process.

See also

EthumbClient to generate thumbnails using a server (recommended).

delete()

Delete the underlying C object.

Note

You MUST call this function when you don’t need the object anymore, as it will free all internal used resources.

document_page

The page number to thumbnail in paged documents.

Type

int

exists()

Test if the thumbnail already exists.

Returns

True if thumbnail exists, False otherwise

file

The file to thumbnail.

This is a tuple of 2 strings: path and key.

path: Is the file to use.

key: If path allows storing multiple resources in a single file (EET or Edje for instance), this is the name used to locate the right resource inside the file.

For convenience you can also assign a single string value (path), ignoring the key.

Type

str or (str, str)

Raises

RuntimeError – on failure setting the property

file_free()

Reset the source file information.

frame

The optional edje file used to generate a frame around the thumbnail

This can be used to simulate frames (wood, polaroid, etc) in the generated thumbnails.

Type

(str, str, str): (theme_file, group_name, swallow_name)

Raises

RuntimeError – on failure setting the property

generate(func, *args, **kargs)

Generate the thumbnail.

Thumbnail generation is asynchronous and depend on ecore main loop running. Given function will be called back with generation status if True is returned by this call. If False is returned, given function will not be called.

Existing thumbnails will be overwritten with this call. Check if they already exist with exists() before calling.

Parameters

func

function to call on generation completion, even if failed or succeeded. Signature is:

func(Ethumb, success, *args, **kargs)

with success being True for successful generation or False on failure.

Returns

True on success and False on failure

Raises

TypeError – if func is not callable.

thumb_aspect

The aspect ratio policy.

When the source and thumbnail aspect ratios don’t match, this policy sets how to adapt from the former to the latter: resize keeping source aspect ratio, resize ignoring it or crop.

Type

Ethumb_Thumb_Aspect

thumb_category

The thumbnails category

Category sub directory to store thumbnail. Default is either “normal” or “large” for FDO compliant thumbnails or WIDTHxHEIGHT-ASPECT[-FRAMED]-FORMAT. It can be a string or None to use auto generated names.

Type

str

thumb_compress

The thumbnail compression rate.

Value from 0 to 9, default is 9. The effect depends on the format being used, JPEG will not use it.

Type

int

thumb_crop_align

Crop alignment in use.

Parameters
  • x – horizontal alignment. 0.0 means left side will be visible or right side is being lost. 1.0 means right side will be visible or left side is being lost. 0.5 means just center is visible, both sides will be lost. Default is 0.5.

  • y – vertical alignment. 0.0 is top visible, 1.0 is bottom visible, 0.5 is center visible. Default is 0.5

Type

(float x, float y)

thumb_dir_path

Destination folder for the thumbnails.

This is the base folder, a category folder is added to this path as a sub directory. Default is ~/.thumbnails

Type

str

thumb_fdo

Set a standard FDO thumbnail size

This is a preset to provide freedesktop.org (fdo) standard compliant thumbnails. That is, files are stored as JPEG under ~/.thumbnails/SIZE, with size being either normal (128x128) or large (256x256).

Type

Ethumb_Thumb_FDO_Size writeonly

thumb_format

The fileformat for the thumbnails.

Thumbnails are compressed; possible formats are PNG, JPEG and EET.

Type

Ethumb_Thumb_Format

thumb_orientation

The thumbnail rotation or flip.

Type

Ethumb_Thumb_Orientation

thumb_path

The complete path of the generated thumbnail.

This is a tuple of 2 strings: path and key.

path: Is the complete file path.

key: If path allows storing multiple resources in a single file (EET or Edje for instance), this is the name used to locate the right resource inside the file.

For convenience you can also assign a single string value (path), ignoring the key.

Type

str or (str, str)

thumb_quality

The thumbnail compression quality.

Value from 0 to 100, default is 80. The effect depends on the format being used, PNG will not use it.

Type

int

thumb_size

The size of thumbnails.

Type

(int width, int height)

video_fps

The thumbnail framerate.

Default to 10.

Type

int

video_interval

The video frame interval, in seconds.

This is useful for animated thumbnail and will define skip time before going to the next frame.

Note

that video backends might not be able to precisely skip that amount as it will depend on various factors, including video encoding.

Type

float

video_ntimes

The number of times the video loops (if applicable).

Type

int

video_start

The start point for video thumbnails.

Type

float (from 0.0 to 1.0)

video_time

The video time (duration) in seconds.

Type

float