def update_page_number(self): loop.acquire_lock() if (self.page_numbering_type == 0): self.starting_page_number = self.starting_page_number + 1 else: self.starting_page_number = self.starting_page_number + 2 loop.release_lock()
def button_ocr_and_view_clicked(self,*data): name = self.icon_view_image_list.get_selected_item_names() if(name == []): return; self.show_progress_bar("Running ocr... Please wait"); image_file = self.get_shell_filename(name[0]) self.output_terminal.run_command("tesseract {0} /tmp/tesseract-train/output -l {1}".format(image_file,self.language)); # Wait for output os.system("while [ ! -f /tmp/tesseract-train/output.txt ]; do sleep .1; done") os.system("count=100; while [ ! -s /tmp/tesseract-train/output.txt ] && [ $count -ge 0 ]; do sleep .1; count=$(($count-1)); done") self.hide_progress_bar() loop.acquire_lock() window_output = window.Window(_("Recognised text from image {0} with {1}".format(image_file.split("/")[-1],self.language))) window_output.set_taskbar_icon(macros.logo_file) tv = text_view.TextView() sb = containers.ScrollBox() sb.add(tv) tv.set_vexpand(True) tv.set_hexpand(True) tv.set_text(open("/tmp/tesseract-train/output.txt").read()) os.system("rm /tmp/tesseract-train/output.txt") window_output.set_default_size(500,400) window_output.add(sb) window_output.show_all() loop.release_lock()
def language_combobox_changed(self,*data): active = self.combobox_language.get_active() # While resetting combobox after training the active will be -1 if ( active <= len(self.languages) and active != -1 ): self.language = self.languages[active] self.show_progress_bar("Loading components of "+self.language) #Removing all files in /tmp/tesseract-train/ shutil.rmtree("/tmp/tesseract-train/") os.mkdir("/tmp/tesseract-train/") cmd = "combine_tessdata -u {0}/{1}.traineddata /tmp/tesseract-train/file".format(self.tessdata_dir,self.language) self.output_terminal.run_command(cmd) os.system("while [ ! -r /tmp/tesseract-train/file.unicharset ]; do sleep 0.1; done") #setting ambiguous table loop.acquire_lock() self.treeview_ambiguous.clear() loop.release_lock() os.system("while [ ! -r /tmp/tesseract-train/file.unicharambigs ]; do sleep 0.1; done") self.import_ambiguous_list_from_file("/tmp/tesseract-train/file.unicharambigs") for item in DICT_LIST: if os.path.isfile(item): cmd = "dawg2wordlist /tmp/tesseract-train/file.unicharset {0} {0}.txt".format(item) self.output_terminal.run_command(cmd) os.system("while kill -0 $(pidof dawg2wordlist) 2> /dev/null; do sleep .1; done") os.system("count=100; while [ ! -r {0}.txt ] && [ $count -ge 0 ]; do sleep .1; count=$(($count-1)); done".format(item)) else: f = open(item+".txt","w") f.close() # Create user dictionary if not exist if not os.path.isfile(macros.home_dir+"/lios/user-words.txt"): f = open(macros.home_dir+"/lios/user-words.txt","w") f.close() # Loading each dictionarys for d_obj in self.dictionary_objects: loop.acquire_lock() d_obj.load() loop.release_lock() self.hide_progress_bar()
def language_combobox_changed(self,*data): active = self.combobox_language.get_active() # While resetting combobox after training the active will be -1 if ( active <= len(self.languages) and active != -1 ): self.language = self.languages[active] self.show_progress_bar("Loading components of "+self.language) #Removing all files in /tmp/tesseract-train/ shutil.rmtree("/tmp/tesseract-train/") os.mkdir("/tmp/tesseract-train/") cmd = "combine_tessdata -u {0}/{1}.traineddata /tmp/tesseract-train/file".format(self.tessdata_dir,self.language) self.output_terminal.run_command(cmd) os.system("while [ ! -r /tmp/tesseract-train/file.unicharset ]; do sleep 0.1; done") #setting ambiguous table loop.acquire_lock() self.treeview_ambiguous.clear() loop.release_lock() os.system("while [ ! -r /tmp/tesseract-train/file.unicharambigs ]; do sleep 0.1; done") self.import_ambiguous_list_from_file("/tmp/tesseract-train/file.unicharambigs") for item in DICT_LIST: if os.path.isfile(item): cmd = "dawg2wordlist /tmp/tesseract-train/file.unicharset {0} {0}.txt".format(item) self.output_terminal.run_command(cmd) os.system("while kill -0 $(pidof dawg2wordlist) 2> /dev/null; do sleep .1; done") os.system("count=100; while [ ! -r {0}.txt ] && [ $count -ge 0 ]; do sleep .1; count=$(($count-1)); done".format(item)) else: f = open(item+".txt","w") f.close() # Create user dictionary if not exist if not os.path.isfile(macros.user_home_path+"/lios/user-words.txt"): f = open(macros.user_home_path+"/lios/user-words.txt","w") f.close() # Loading each dictionarys for d_obj in self.dictionary_objects: loop.acquire_lock() d_obj.load() loop.release_lock() self.hide_progress_bar()
def redraw(self): loop.acquire_lock() self.load_image(self.filename, [], self.ZOOM_FIT) loop.release_lock()
def redraw(self): loop.acquire_lock() self.load_image(self.filename,[],self.ZOOM_FIT) loop.release_lock()