void display_images(IMAGE &clip_image, IMAGE &scaled_image) { ScrollView* clip_im_window; //window for debug ScrollView* scale_im_window; //window for debug inT16 i; // xmin xmax ymin ymax clip_im_window = new ScrollView ("Clipped Blob", editor_word_xpos - 20, editor_word_ypos - 100, 5 * clip_image.get_xsize (), 5 * clip_image.get_ysize (), clip_image.get_xsize (), clip_image.get_ysize (), true); sv_show_sub_image (&clip_image, 0, 0, clip_image.get_xsize (), clip_image.get_ysize (), clip_im_window, 0, 0); clip_im_window->Pen(255,0,0); for (i = 1; i < clip_image.get_xsize (); i++) { clip_im_window->SetCursor(i,0); clip_im_window->DrawTo(i, clip_image.get_xsize ()); } for (i = 1; i < clip_image.get_ysize (); i++) { clip_im_window->SetCursor(0,i); clip_im_window->DrawTo(clip_image.get_xsize (),i); } // xmin xmax ymin ymax scale_im_window = new ScrollView ("Scaled Blob", editor_word_xpos + 300, editor_word_ypos - 100, 5 * scaled_image.get_xsize (), 5 * scaled_image.get_ysize (), scaled_image.get_xsize (), scaled_image.get_ysize (), true); sv_show_sub_image (&scaled_image, 0, 0, scaled_image.get_xsize (), scaled_image.get_ysize (), scale_im_window, 0, 0); scale_im_window->Pen(255,0,0); for (i = 1; i < scaled_image.get_xsize (); i++) { scale_im_window->SetCursor(i,0); scale_im_window->DrawTo(i, scaled_image.get_xsize ()); } for (i = 1; i < scaled_image.get_ysize (); i++) { scale_im_window->SetCursor(0,i); scale_im_window->DrawTo(scaled_image.get_xsize (),i); } ScrollView::Update(); }
void PDBLK::show( //show image block IMAGE *image, //image to show ScrollView* window //window to show in ) { BLOCK_RECT_IT it = this; //rectangle iterator ICOORD bleft, tright; //corners of rectangle for (it.start_block (); !it.cycled_rects (); it.forward ()) { //get rectangle it.bounding_box (bleft, tright); // tprintf("Drawing a block with a bottom left of (%d,%d)\n", // bleft.x(),bleft.y()); //show it sv_show_sub_image (image, bleft.x (), bleft.y (), tright.x () - bleft.x (), tright.y () - bleft.y (), window, bleft.x (), bleft.y ()); } }
ScrollView* display_clip_image(WERD *word, //word to be processed IMAGE &bin_image, //whole image PIXROW_LIST *pixrow_list, //pixrows built TBOX &pix_box //box of subimage ) { ScrollView* clip_window; //window for debug TBOX word_box = word->bounding_box (); int border = word_box.height () / 2; TBOX display_box = word_box; display_box.move_bottom_edge (-border); display_box.move_top_edge (border); display_box.move_left_edge (-border); display_box.move_right_edge (border); display_box -= TBOX (ICOORD (0, 0 - BUG_OFFSET), ICOORD (bin_image.get_xsize (), bin_image.get_ysize () - BUG_OFFSET)); pgeditor_msg ("Creating Clip window..."); clip_window = new ScrollView("Clipped Blobs", editor_word_xpos, editor_word_ypos, 3 * (word_box.width () + 2 * border), 3 * (word_box.height () + 2 * border), display_box.left () + display_box.right (), display_box.bottom () - BUG_OFFSET + display_box.top () - BUG_OFFSET, true); // ymin, ymax pgeditor_msg ("Creating Clip window...Done"); clip_window->Clear(); sv_show_sub_image (&bin_image, display_box.left (), display_box.bottom (), display_box.width (), display_box.height (), clip_window, display_box.left (), display_box.bottom () - BUG_OFFSET); word->plot (clip_window, ScrollView::RED); word_box.plot (clip_window, ScrollView::BLUE, ScrollView::BLUE); pix_box.plot (clip_window, ScrollView::BLUE, ScrollView::BLUE); plot_pixrows(pixrow_list, clip_window); return clip_window; }