[..] La fonction [scl] img_str_tssscl

Code
int img_str_tss_xpl(){ scltracefa(§, ƒ, ); scltracefc("scl-%s (%s) : %s\n\n", sclver(), sclsec(), temps_char(0)); int mode=6; // "single uniform block of text" int left=1740, top=1360; int width=4380-left, height=1990-top; int marge = height*20/100; left-=marge; top-=marge; width+=2*marge; height+=2*marge; img_str_tss_xpl("./don/img/cathodig_sigwal.jpg", "fra", mode, left, top, width, height); //--------------------------------------------------------------------- left=148; top=647-515; width=1019-left; height=515-310; marge = height*20/100; left-=marge; top-=marge; width+=2*marge; height+=2*marge; img_str_tss_xpl("./don/img/yoran_sigwal.jpg", "fra", mode, left, top, width, height); scltracefe(§, ƒ, ); return 0; } /* ƒ décorée par 🔬 le 28-02-2025 08:50:45 */
int img_str_tss_xpl(const char *filepath, const char *language, int mode, int left, int top, int width, int height){ scltracefa(§, ƒ, ); int ierr=-1, ichk; char **repnom=frepnom(filepath), *imgid=repnom[2]; int imgi=-1, widthn, heightn; // Chargement de l'image ichk = chargimage_lpt(filepath, &imgi, &widthn, &heightn); if(ichk<0){ scltracerr(§, ƒ, , "erreur chargimage_lpt()!\n"); scltracefe(§, ƒ, ); return ierr; } ierr--; // Information sur l'image finfo_lpt(imgi); //--------------------------------------------------------------------- // Constitution du signal couleur int r, v, b; double dr, dv, db; int coln=widthn, coli, rown=heightn, rowi; double **sr=newmat<double>(coln, rown); double **sji=newmat<double>(coln, rown), **sjj=newmat<double>(coln, rown), **sjk=newmat<double>(coln, rown); for(rowi=0;rowi<rown;rowi++){ for(coli=0;coli<coln;coli++){ ichk = recoirvb_lpt(imgi, coli, rowi, &r, &v, &b); if(ichk<0){ scltracerr(§, ƒ, , "erreur recoirvb_lpt()\n"); scltracefe(§, ƒ, ); return ierr; } dr=(double)r; dv=(double)v; db=(double)b; // Partie reelle grise sr[coli][rown-1-rowi]=(dr*dr + dv*dv + db*db); // Parties imaginaires sji[coli][rown-1-rowi]=dr; sjj[coli][rown-1-rowi]=dv; sjk[coli][rown-1-rowi]=db; } } ierr=ierr-1; // 1 erreur dans la boucle //--------------------------------------------------------------------- double axa=(double)left, axe=(double)(left+width); double aya=(double)(heightn-top-height), aye=(double)(heightn-top); scl::string_c imgname=scl::string_c(imgid)+"_"+num_str<double>(axa)+"-"+ num_str<double>(axe)+"_"+num_str<double>(aya)+"-"+ num_str<double>(aye)+".pdf"; scl::string_c imgpath="./srt/"+imgname; int chan=4, chai=0; int nyl = (int)round(1400.0/((double)chan)); grafmat_dis(imgpath.c_str(), coln, rown, sr, "yaxislength", nyl*92/100, "yaxisposition", 1799-(chan-1-chai)*nyl, "colormap", "grey", "ylabel", "", "titlex", "", "linespeca", "-a", "subtitlex", imgname.c_str(), "axmin", axa, "axmax", axe, "aymin", aya, "aymax", aye, /*"axis", "equal",*/ "append", "on", ); chai++; grafmat_dis(imgpath.c_str(), coln, rown, sji, "yaxislength", nyl*92/100, "yaxisposition", 1799-(chan-1-chai)*nyl, "colormap", "rouge", "ylabel", "", "titlex", "", "subtitlex", "", "linespeca", "-a", "axmin", axa, "axmax", axe, "aymin", aya, "aymax", aye, /*"axis", "equal",*/ "append", "on", ); chai++; grafmat_dis(imgpath.c_str(), coln, rown, sjj, "yaxislength", nyl*92/100, "yaxisposition", 1799-(chan-1-chai)*nyl, "colormap", "vert", "ylabel", "", "titlex", "", "subtitlex", "", "linespeca", "-a", "axmin", axa, "axmax", axe, "aymin", aya, "aymax", aye, /*"axis", "equal",*/ "append", "on", ); chai++; grafmat_dis(imgpath.c_str(), coln, rown, sjk, "yaxislength", nyl*92/100, "yaxisposition", 1799-(chan-1-chai)*nyl, "colormap", "bleu", "ylabel", "", "titlex", "", "subtitlex", "", "linespeca", "-a", "xlabel", "", "axmin", axa, "axmax", axe, "aymin", aya, "aymax", aye, /*"axis", "equal",*/ /*"append", "off",*/ ); //--------------------------------------------------------------------- //[>OCR] //--------------------------------------------------------------------- // Reconnaissance de caracteres char *text=img_str_tss(imgi, language, mode, left, top, width, height); scltracefc("text=%s\n", text); //--------------------------------------------------------------------- //[<OCR] //--------------------------------------------------------------------- //--------------------------------------------------------------------- //[>LIBR MEMOIRE] //--------------------------------------------------------------------- librimage_lpt(imgi); imgpath.clear(); imgname.clear(); deletemat<double>(coln, &sjk); deletemat<double>(coln, &sjj); deletemat<double>(coln, &sji); deletemat<double>(coln, &sr); //--------------------------------------------------------------------- //[<LIBR MEMOIRE] //--------------------------------------------------------------------- scltracefe(§, ƒ, ); return 0; } /* ƒ décorée par 🔬 le 28-02-2025 08:50:46 */
Sortie
[>..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl] scl-25.02 (gwin64) : 28-02-2025 08:50:46 [>..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl] >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [>IMAGE FILE INFORMATIONS] >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> filepath: './don/img/cathodig_sigwal.jpg' - image id : 0 - width : 5184 - height : 3456 - depth : 32 - samples per pixel : 3 - words per line : 5184 - refcount : 1 - xres : 0 - yres : 0 - input format : 2 - special : 0 - text : '(null)' <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< [<IMAGE FILE INFORMATIONS] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< << END OF DISLIN / VERSION 11.3.2 << << Date : 28.02.2025 Time : 08:51:04 Pageformat: DA4L << << Vectors : 249 Warnings: 0 Fileformat: PDF << << Metafile: ./srt/cathodig_sigwal_1614-4506_1340-2222.pdf << <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< text=SIGW AL [<..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl] [>..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl] >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> [>IMAGE FILE INFORMATIONS] >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> filepath: './don/img/yoran_sigwal.jpg' - image id : 1 - width : 1166 - height : 647 - depth : 32 - samples per pixel : 3 - words per line : 1166 - refcount : 1 - xres : 72 - yres : 72 - input format : 2 - special : 0 - text : '(null)' <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< [<IMAGE FILE INFORMATIONS] <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< << END OF DISLIN / VERSION 11.3.2 << << Date : 28.02.2025 Time : 08:51:07 Pageformat: DA4L << << Vectors : 276 Warnings: 0 Fileformat: PDF << << Metafile: ./srt/yoran_sigwal_107-1060_269-556.pdf << <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<< text=Diqual [<..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl] [<..\xpl\src\sclocr.tss.xpl.cpp.img_str_tss_xpl]