ho_pixbuf.h(3)
| src/ho_pixbuf.h(3) | libhocr | src/ho_pixbuf.h(3) |
NAME
src/ho_pixbuf.h - libhocr C language header.
SYNOPSIS
#include <ho_bitmap.h>
#include <ho_objmap.h>
#include <ho_layout.h>
Data Structures
struct string_data
helper string struct for non-null-terminated strings struct
ho_pixbuf
libhocr pixbuf map struct (copy gtk pixbuf)
Defines
#define HO_PIXBUF_H 1
#define ho_pixbuf_min3(a, b, c) ((((a)<(b))&&((a)<(c))) ?
(a) : (((b)<(c)) ? (b) : (c)))
#define ho_pixbuf_max3(a, b, c) ((((a)>(b))&&((a)>(c))) ?
(a) : (((b)>(c)) ? (b) : (c)))
#define ho_pixbuf_set(m, x, y, col, val)
(((m)->data)[(x)*(m)->n_channels+(y)*(m)->rowstride+(col)]=(val))
#define ho_pixbuf_get(m, x, y, col)
(((m)->data)[(x)*(m)->n_channels+(y)*(m)->rowstride+(col)])
#define ho_pixbuf_get_n_channels(m) ((m)->n_channels)
#define ho_pixbuf_get_width(m) ((m)->width)
#define ho_pixbuf_get_height(m) ((m)->height)
#define ho_pixbuf_get_rowstride(m) ((m)->rowstride)
#define ho_pixbuf_get_data(m) ((m)->data)
Functions
ho_pixbuf * ho_pixbuf_new (const unsigned char
n_channels, const int width, const int height, const int rowstride)
ho_pixbuf * ho_pixbuf_clone (const ho_pixbuf *m)
ho_pixbuf * ho_pixbuf_clone_window (const ho_pixbuf *m,
const int x, const int y, const int width, const int height)
int ho_pixbuf_set_data (ho_pixbuf *pix, const char *data)
string_data ho_pixbuf_get_data_string (ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_new_from_bitmap (const ho_bitmap
*bit_in)
ho_pixbuf * ho_pixbuf_new_from_objmap (const ho_objmap
*obj_in, const unsigned char min, const unsigned char max)
ho_pixbuf * ho_pixbuf_new_from_layout (const ho_layout
*lay_in, const unsigned char show_grid, const ho_bitmap *m_text,
const unsigned char text_block_r, const unsigned char text_block_g, const
unsigned char text_block_b, const unsigned char text_block_a, const unsigned
char text_block_frame_width, const unsigned char line_block_r, const
unsigned char line_block_g, const unsigned char line_block_b, const unsigned
char line_block_a, const unsigned char line_block_frame_width, const
unsigned char word_block_r, const unsigned char word_block_g, const unsigned
char word_block_b, const unsigned char word_block_a, const unsigned char
word_block_frame_width, const unsigned char font_block_r, const unsigned
char font_block_g, const unsigned char font_block_b, const unsigned char
font_block_a, const unsigned char font_block_frame_width)
ho_pixbuf * ho_pixbuf_to_rgb (const ho_pixbuf *pix_in)
int ho_pixbuf_free (ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_color_to_gray (const ho_pixbuf
*pix)
ho_pixbuf * ho_pixbuf_color_to_red (const ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_color_to_green (const ho_pixbuf
*pix)
ho_pixbuf * ho_pixbuf_color_to_blue (const ho_pixbuf
*pix)
ho_pixbuf * ho_pixbuf_scale2 (const ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_scale3 (const ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_scale4 (const ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_scale8 (const ho_pixbuf *pix)
ho_pixbuf * ho_pixbuf_scale (const ho_pixbuf *pix, const
unsigned char scale)
unsigned char ho_pixbuf_minmax (const ho_pixbuf *pix, unsigned
char *min, unsigned char *max)
ho_pixbuf * ho_pixbuf_linear_filter (const ho_pixbuf
*pix)
ho_bitmap * ho_pixbuf_to_bitmap (const ho_pixbuf *pix,
unsigned char threshold)
ho_bitmap * ho_pixbuf_to_bitmap_by_color (const ho_pixbuf
*pix, unsigned char min_red, unsigned char max_red, unsigned char min_green,
unsigned char max_green, unsigned char min_blue, unsigned char max_blue)
ho_bitmap * ho_pixbuf_to_bitmap_adaptive (const ho_pixbuf
*pix, unsigned char threshold, unsigned char size, unsigned char
adaptive_threshold)
ho_bitmap * ho_pixbuf_to_bitmap_adaptive_fine (const
ho_pixbuf *pix, unsigned char threshold, unsigned char size, unsigned
char adaptive_threshold)
ho_bitmap * ho_pixbuf_to_bitmap_wrapper (const ho_pixbuf
*pix_in, const unsigned char scale, const unsigned char adaptive, const
unsigned char threshold, const unsigned char a_threshold, const unsigned
char size)
int ho_pixbuf_draw_line (ho_pixbuf *m, const int x1, const int
y1, const int x2, const int y2, const unsigned char red, const unsigned char
green, const unsigned char blue)
int ho_pixbuf_draw_box (ho_pixbuf *m, const int x, const int y,
const int width, const int height, const unsigned char red, const unsigned
char green, const unsigned char blue, const unsigned char alpha)
int ho_pixbuf_draw_box_empty (ho_pixbuf *m, const int x, const
int y, const int width, const int height, const unsigned char red, const
unsigned char green, const unsigned char blue)
int ho_pixbuf_draw_horizontal_scale (ho_pixbuf *m, const int x1,
const int y1, const int length, const int step, const unsigned char red,
const unsigned char green, const unsigned char blue)
int ho_pixbuf_draw_vertical_scale (ho_pixbuf *m, const int x1,
const int y1, const int length, const int step, const unsigned char red,
const unsigned char green, const unsigned char blue)
int ho_pixbuf_draw_grid (ho_pixbuf *m, const int size, const int
step, const unsigned char red, const unsigned char green, const unsigned
char blue)
int ho_pixbuf_draw_bitmap (ho_pixbuf *m, const ho_bitmap
*bit_in, const unsigned char red, const unsigned char green, const unsigned
char blue, const unsigned char alpha)
int ho_pixbuf_draw_rgb_bitmap (ho_pixbuf *m, const
ho_bitmap *bit_in_red, const ho_bitmap *bit_in_green, const
ho_bitmap *bit_in_blue)
int ho_pixbuf_draw_rgb_pixbufs (ho_pixbuf *m, const
ho_pixbuf *bit_in_red, const ho_pixbuf *bit_in_green, const
ho_pixbuf *bit_in_blue)
int ho_pixbuf_draw_bitmap_at (ho_pixbuf *m, const
ho_bitmap *bit_in, const int x1, const int y1, const unsigned char
red, const unsigned char green, const unsigned char blue, const unsigned
char alpha)
ho_pixbuf * ho_pixbuf_pnm_load (const char *filename)
int ho_pixbuf_pnm_save (const ho_pixbuf *pix, const char
*filename)
ho_pixbuf * ho_pixbuf_bw_tiff_load (const char *filename)
int ho_pixbuf_bw_tiff_save (const ho_pixbuf *pix, const char
*filename)
Detailed Description
libhocr C language header.
libhocr - LIBrary for Hebrew Optical Character Recognition
Define Documentation
#define HO_PIXBUF_H 1
#define ho_pixbuf_min3(a, b, c) ((((a)<(b))&&((a)<(c))) ? (a) : (((b)<(c)) ? (b) : (c)))
#define ho_pixbuf_max3(a, b, c) ((((a)>(b))&&((a)>(c))) ? (a) : (((b)>(c)) ? (b) : (c)))
#define ho_pixbuf_set(m, x, y, col, val) (((m)->data)[(x)*(m)->n_channels+(y)*(m)->rowstride+(col)]=(val))
#define ho_pixbuf_get(m, x, y, col) (((m)->data)[(x)*(m)->n_channels+(y)*(m)->rowstride+(col)])
#define ho_pixbuf_get_n_channels(m) ((m)->n_channels)
#define ho_pixbuf_get_width(m) ((m)->width)
#define ho_pixbuf_get_height(m) ((m)->height)
#define ho_pixbuf_get_rowstride(m) ((m)->rowstride)
#define ho_pixbuf_get_data(m) ((m)->data)
Function Documentation
ho_pixbuf* ho_pixbuf_new (const unsigned char n_channels, const int width, const int height, const int rowstride)
new ho_pixbuf
Parameters:
height hight of pixbuf in pixels
width width of pixbuf in pixels
rowstride number of bytes in a row
Returns:
ho_pixbuf* ho_pixbuf_clone (const ho_pixbuf * m)
clone ho_pixbuf
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_clone_window (const ho_pixbuf * m, const int x, const int y, const int width, const int height)
clone ho_pixbuf window
Parameters:
x x-start of window
y y-start of window
width width of window
height height of window
Returns:
int ho_pixbuf_set_data (ho_pixbuf * pix, const char * data)
copy pixel date to a ho_pixbuf
Parameters:
data the pixel data to copy
Returns:
string_data ho_pixbuf_get_data_string (ho_pixbuf * pix)
get pixel date to a ho_pixbuf as a string
Parameters:
a string data struct of the pixbuf data
ho_pixbuf* ho_pixbuf_new_from_bitmap (const ho_bitmap * bit_in)
new ho_pixbuf from ho_bitmap
Parameters:
Returns:
Referenced by hocr::Hocr::get_bitmap_pixbuf().
ho_pixbuf* ho_pixbuf_new_from_objmap (const ho_objmap * obj_in, const unsigned char min, const unsigned char max)
new ho_pixbuf from ho_objmap
Parameters:
min minimal color value
max maximal color value
Returns:
ho_pixbuf* ho_pixbuf_new_from_layout (const ho_layout * lay_in, const unsigned char show_grid, const ho_bitmap * m_text, const unsigned char text_block_r, const unsigned char text_block_g, const unsigned char text_block_b, const unsigned char text_block_a, const unsigned char text_block_frame_width, const unsigned char line_block_r, const unsigned char line_block_g, const unsigned char line_block_b, const unsigned char line_block_a, const unsigned char line_block_frame_width, const unsigned char word_block_r, const unsigned char word_block_g, const unsigned char word_block_b, const unsigned char word_block_a, const unsigned char word_block_frame_width, const unsigned char font_block_r, const unsigned char font_block_g, const unsigned char font_block_b, const unsigned char font_block_a, const unsigned char font_block_frame_width)
new ho_pixbuf from ho_layout
Parameters:
show_grid show grid on output
m_text text to draw on output
text_block_r red channel of text block
text_block_g green channel of text block
text_block_b blue channel of text block
text_block_a alfa channel of text block
text_block_frame_width frame width of text block
line_block_r red channel of line block
line_block_g green channel of line block
line_block_b blue channel of line block
line_block_a alfa channel of line block
line_block_frame_width frame line of text block
word_block_r red channel of word block
word_block_g green channel of word block
word_block_b blue channel of word block
word_block_a alfa channel of word block
word_block_frame_width frame width of word block
font_block_r red channel of font block
font_block_g green channel of font block
font_block_b blue channel of font block
font_block_a alfa channel of font block
font_block_frame_width frame width of font block
Returns:
Referenced by hocr::Hocr::get_layout_pixbuf().
ho_pixbuf* ho_pixbuf_to_rgb (const ho_pixbuf * pix_in)
new rgb ho_pixbuf from non rgb pixbuf
Parameters:
Returns:
Referenced by hocr::Hocr::get_bitmap_pixbuf().
int ho_pixbuf_free (ho_pixbuf * pix)
free an ho_pixbuf
Parameters:
Returns:
Referenced by hocr::Hocr::get_bitmap_pixbuf(), hocr::Hocr::set_bitmap(), hocr::Hocr::set_pixbuf(), and hocr::Hocr::~Hocr().
ho_pixbuf* ho_pixbuf_color_to_gray (const ho_pixbuf * pix)
converts a color pixbuf to gray one
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_color_to_red (const ho_pixbuf * pix)
take the Red channel from an RGB pixbuf
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_color_to_green (const ho_pixbuf * pix)
take the Green channel from an RGB pixbuf
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_color_to_blue (const ho_pixbuf * pix)
take the Blue channel from an RGB pixbuf
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_scale2 (const ho_pixbuf * pix)
scale a gray pixbuf to by 2
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_scale3 (const ho_pixbuf * pix)
scale a gray pixbuf to by 3
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_scale4 (const ho_pixbuf * pix)
scale a gray pixbuf to by 4
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_scale8 (const ho_pixbuf * pix)
scale a gray pixbuf to by 8
Parameters:
Returns:
ho_pixbuf* ho_pixbuf_scale (const ho_pixbuf * pix, const unsigned char scale)
scale a gray pixbuf
Parameters:
scale scale by this factor
Returns:
unsigned char ho_pixbuf_minmax (const ho_pixbuf * pix, unsigned char * min, unsigned char * max)
get the min and max values in a gray pixbuf
Parameters:
min a pointer to return the min
max a pointer to return the max
Returns:
ho_pixbuf* ho_pixbuf_linear_filter (const ho_pixbuf * pix)
aplay a linear filter to a gray pixbuf
Parameters:
Returns:
ho_bitmap* ho_pixbuf_to_bitmap (const ho_pixbuf * pix, unsigned char threshold)
convert a color or gray pixbuf to bitmap
Parameters:
threshold the threshold to use 0..100
Returns:
ho_bitmap* ho_pixbuf_to_bitmap_by_color (const ho_pixbuf * pix, unsigned char min_red, unsigned char max_red, unsigned char min_green, unsigned char max_green, unsigned char min_blue, unsigned char max_blue)
convert a color or gray pixbuf to bitmap
Parameters:
min_red the min threshold for red channel
max_red the max threshold for red channel
min_green the min threshold for green channel
max_gren the max threshold for green channel
min_blue the min threshold for blue channel
max_blue the max threshold for blue channel
Returns:
ho_bitmap* ho_pixbuf_to_bitmap_adaptive (const ho_pixbuf * pix, unsigned char threshold, unsigned char size, unsigned char adaptive_threshold)
convert a gray pixbuf to bitmap using adaptive thresholding
Parameters:
threshold the threshold to use 0..100
size block size for the adaptive steps
adaptive_threshold the threshold to use for adaptive thresholding 0..100
Returns:
ho_bitmap* ho_pixbuf_to_bitmap_adaptive_fine (const ho_pixbuf * pix, unsigned char threshold, unsigned char size, unsigned char adaptive_threshold)
convert a gray pixbuf to bitmap using better adaptive thresholding
Parameters:
threshold the threshold to use 0..100
size block size for the adaptive steps
adaptive_threshold the threshold to use for adaptive thresholding 0..100
Returns:
ho_bitmap* ho_pixbuf_to_bitmap_wrapper (const ho_pixbuf * pix_in, const unsigned char scale, const unsigned char adaptive, const unsigned char threshold, const unsigned char a_threshold, const unsigned char size)
convert a color of gray pixbuf to bitmap wrapper function
Parameters:
scale the scale to use
adaptive what type of thresholding to use. 0-normal,1-no,2-fine.
threshold the threshold to use 0..100
a_threshold the threshold to use for adaptive thresholding 0..100
size kernel size to use for adaptive thresholding
Returns:
int ho_pixbuf_draw_line (ho_pixbuf * m, const int x1, const int y1, const int x2, const int y2, const unsigned char red, const unsigned char green, const unsigned char blue)
draw a line from x1,y1 to x2,y2
Parameters:
x1 x cordinate of start point
y1 y cordinate of start point
x2 x cordinate of end point
y2 y cordinate of end point
red value of red channel
green value of green channel
blue value of blue channel
Returns:
int ho_pixbuf_draw_box (ho_pixbuf * m, const int x, const int y, const int width, const int height, const unsigned char red, const unsigned char green, const unsigned char blue, const unsigned char alpha)
draw a box on pixbuf
Parameters:
x x-start of box
y y-start of box
width width of box
height height of box
red value of red channel
green value of green channel
blue value of blue channel
alpha value of alpha channel
Returns:
int ho_pixbuf_draw_box_empty (ho_pixbuf * m, const int x, const int y, const int width, const int height, const unsigned char red, const unsigned char green, const unsigned char blue)
draw an empty box on pixbuf
Parameters:
x x-start of box
y y-start of box
width width of box
height height of box
red value of red channel
green value of green channel
blue value of blue channel
Returns:
int ho_pixbuf_draw_horizontal_scale (ho_pixbuf * m, const int x1, const int y1, const int length, const int step, const unsigned char red, const unsigned char green, const unsigned char blue)
draw a scale line from x1,y1
Parameters:
x1 x cordinate of start point
y1 y cordinate of start point
length length of scale line
step size of scale marks
red value of red channel
green value of green channel
blue value of blue channel
Returns:
int ho_pixbuf_draw_vertical_scale (ho_pixbuf * m, const int x1, const int y1, const int length, const int step, const unsigned char red, const unsigned char green, const unsigned char blue)
draw a scale line from x1,y1
Parameters:
x1 x cordinate of start point
y1 y cordinate of start point
length length of scale line
step size of scale marks
red value of red channel
green value of green channel
blue value of blue channel
Returns:
int ho_pixbuf_draw_grid (ho_pixbuf * m, const int size, const int step, const unsigned char red, const unsigned char green, const unsigned char blue)
draw a grid
Parameters:
size size of grid boxes
step size of scale marks
red value of red channel
green value of green channel
blue value of blue channel
Returns:
int ho_pixbuf_draw_bitmap (ho_pixbuf * m, const ho_bitmap * bit_in, const unsigned char red, const unsigned char green, const unsigned char blue, const unsigned char alpha)
draw a bitmap
Parameters:
bit_in the bitmap to draw on the pixbuf
red value of red channel
green value of green channel
blue value of blue channel
alpha value of alpha channel
Returns:
int ho_pixbuf_draw_rgb_bitmap (ho_pixbuf * m, const ho_bitmap * bit_in_red, const ho_bitmap * bit_in_green, const ho_bitmap * bit_in_blue)
draw RGB bitmap
Parameters:
bit_in_red the bitmap to draw on the pixbuf red channel
bit_in_green the bitmap to draw on the pixbuf green channel
bit_in_blue the bitmap to draw on the pixbuf blue channel
Returns:
int ho_pixbuf_draw_rgb_pixbufs (ho_pixbuf * m, const ho_pixbuf * bit_in_red, const ho_pixbuf * bit_in_green, const ho_pixbuf * bit_in_blue)
draw RGB pixbufs
Parameters:
bit_in_red the grey pixbuf to draw on the pixbuf red channel
bit_in_green the grey pixbuf to draw on the pixbuf green channel
bit_in_blue the grey pixbuf to draw on the pixbuf blue channel
Returns:
int ho_pixbuf_draw_bitmap_at (ho_pixbuf * m, const ho_bitmap * bit_in, const int x1, const int y1, const unsigned char red, const unsigned char green, const unsigned char blue, const unsigned char alpha)
draw a bitmap
Parameters:
bit_in the bitmap to draw on the pixbuf
x1 x of upper right start of drawing
y1 y of upper right start of drawing
red value of red channel
green value of green channel
blue value of blue channel
alpha value of alpha channel
Returns:
ho_pixbuf* ho_pixbuf_pnm_load (const char * filename)
read ho_pixbuf from pnm file 8 or 24 bpp
Parameters:
Returns:
int ho_pixbuf_pnm_save (const ho_pixbuf * pix, const char * filename)
writes ho_pixbuf to pnm file
Parameters:
filename save as file name
Returns:
ho_pixbuf* ho_pixbuf_bw_tiff_load (const char * filename)
read ho_pixbuf from a b/w tiff file
Parameters:
Returns:
int ho_pixbuf_bw_tiff_save (const ho_pixbuf * pix, const char * filename)
writes ho_pixbuf to a black and white tiff file
Parameters:
filename save as file name
Returns:
Author
Generated automatically by Doxygen for libhocr from the source code.
| 31 Jul 2008 | Version 0.10.17 |
