缩略图是存储的图象或视频帧的微型图格式。当将图象存储在数据库中时,Image Extender 将图象的缩略图存储在属性表中。当将视频存储在数据库中时,Video Extender 将表示视频对象的类属缩略图存储在属性表中。
在缺省情况下,Image Extender 自动创建的图象缩略图的大小约为 112 x 84 象素。Video Extender 插入的类属视频缩略图的大小是 108 x 78 象素。图象缩略图和类属视频缩略图都以 GIF 格式存储。根据图象或视频帧中数据的密度, 这对应于大概 4.5 KB 到 5KB 的数据。若存储或更新具有用户提供的属性的图象或视频, 可指定您选择的大小和格式的缩略图。
在 SQL SELECT 语句中使用 Thumbnail UDF 来从数据库检索缩略图。使用文件引用变量来将缩略图传送至文件。指定 UDF 时, 需要指定数据库表中包含图象或视频句柄的列的名称。然后使用 DBiBrowse API 来 显示图象或视频帧缩略图。
例如,下列语句检索缩略图图象,然后显示它:
long rc, outCount; char Thumbnail_filename[254]; FILE *file_handle; EXEC SQL BEGIN DECLARE SECTION; struct { short len char data[10000]; }Thumbnail_buffer; EXEC SQL END DECLARE SECTION; EXEC SQL SELECT THUMBNAIL(PICTURE) INTO :Thumbnail_buffer FROM EMPLOYEE WHERE NAME = 'Anita Jones'; strcpy (Thumbnail_filename,"/tmp/ajones.tmb"); file_handle=fopen(Thumbnail_filename,"wb+"); outCount=fwrite(Thumbnail_buffer.data, 1, Thumbnail_buffer.len, file_handle); fclose(file_handle); rc = DBiBrowse ( NULL, /* use the default display program */ MMDB_PLAY_FILE, /* thumbnail image in file */ Thumbnail_filename, /* thumbnail image content */ MMDB_PLAY_WAIT); /* wait for user to finish */