当前位置: 首页 > 工具软件 > ZBar > 使用案例 >

ZBar源码分析:zbar_symbol(4)

穆城
2023-12-01

2021SC@SDUSC

symbol.c中关键函数

zbar_symbol_get_loc_x函数检索多边形x坐标的位置。坐标点由基于0的索引指定,函数返回位置多边形中某点的x坐标,如果索引超出范围,则返回-1。

int zbar_symbol_get_loc_x (const zbar_symbol_t *sym,
                           unsigned idx)
{
    if(idx < sym->npts)
        return(sym->pts[idx].x);
    else
        return(-1);
}

zbar_symbol_get_loc_y函数检索多边形y坐标的位置。坐标点由基于0的索引指定,函数返回位置多边形中某点的y坐标,如果索引超出范围,则返回-1。

int zbar_symbol_get_loc_y (const zbar_symbol_t *sym,
                           unsigned idx)
{
    if(idx < sym->npts)
        return(sym->pts[idx].y);
    else
        return(-1);
}

zbar_symbol_get_orientation函数检索解码符号的一般方向。函数返回符号方向的粗略轴对齐指示,如果未知,则返回::ZBAR_ORIENT_UNKNOWN。

zbar_orientation_t zbar_symbol_get_orientation (const zbar_symbol_t *sym)
{
    return(sym->orient);
}

zbar_symbol_next函数迭代此符号所属的集合(只能有一个)。返回集合中的下一个符号,或在没有更多可用结果时返回NULL。

const zbar_symbol_t *zbar_symbol_next (const zbar_symbol_t *sym)
{
    return((sym) ? sym->next : NULL);
}

zbar_symbol_get_components函数检索复合结果的组件。返回包含组件的符号集,如果符号已经是物理符号,则返回NULL。

const zbar_symbol_set_t*
zbar_symbol_get_components (const zbar_symbol_t *sym)
{
    return(sym->syms);
}

zbar_symbol_first_component函数迭代复合结果的组件。返回复合结果的第一个物理组件符号,如果符号已经是物理符号,则返回NULL。

const zbar_symbol_t *zbar_symbol_first_component (const zbar_symbol_t *sym)
{
    return((sym && sym->syms) ? sym->syms->head : NULL);
}

zbar_symbol_set_get_size函数检索集合大小,返回集合中的符号数。

int zbar_symbol_set_get_size (const zbar_symbol_set_t *syms)
{
    return(syms->nsyms);
}

 类似资料: