!include once #1015415 // GrabbedImage //static new ThreadLocal showImageWithRecognizedTexts_makeTeachable2_extraFile; svoid showImageWithRecognizedTexts_makeTeachable2(final BufferedImage img, final ImageSurface is, final L lines, final SimpleRecognizer sr, final Runnable reRecognize) { //final File extraFile = optParam(showImageWithRecognizedTexts_makeTeachable2_extraFile); onImageSurfaceHighlightChange(is, voidfunc(Rect r) { RecognizedText rec = findByField(lines, +r); setToolTip(is, rec == null ? null : str(ocr_minScoreAdjust(rec.text))); }); imageSurfacePopupMenuWhenHighlighted_top(is, voidfunc(JPopupMenu menu, final Rect r) { RecognizedText rec = findByField(lines, +r); ret if rec == null; int score = toIntPercent(ocr_minScoreAdjust(rec.text.score)); addPopupMenuItem(menu, score + "%. Teach... (" + r.w + "*" + r.h + ")", r { assertNotASubclassOfConcept(GrabbedImage); new GrabbedImage gi; gi.image = new BWImage(clipBufferedImage(img, rec.r)); ocr_teachPhraseForm(gi, sr, voidfunc(S groupedText) { rec.text = scored(groupedText, 1); is.repaint(); pcallF(reRecognize); }); }); addSeparator(menu); }); }