comparison src/marksheet.cpp @ 12:52958cd4a073

Implement Force Mask button in Batch Print Mode.
author pyon@macmini
date Sun, 18 May 2014 19:49:15 +0900
parents fdba695b99f1
children
comparison
equal deleted inserted replaced
11:dfcf8c973219 12:52958cd4a073
1 // Filename : marksheet.cpp 1 // Filename : marksheet.cpp
2 // Last Change: 11-Sep-2013. 2 // Last Change: 13-May-2014.
3 // 3 //
4 4
5 #include "common.h" 5 #include "common.h"
6 #include "marksheet.h" 6 #include "marksheet.h"
7 7
57 return hhs; 57 return hhs;
58 } 58 }
59 59
60 bool IsMarksheet( wxString& file, double zmin, double zmax, long lmin, long lmax ) 60 bool IsMarksheet( wxString& file, double zmin, double zmax, long lmin, long lmax )
61 { 61 {
62 wxImage img( file, wxBITMAP_TYPE_JPEG ); 62 float z;
63 int black = 0; 63 long l;
64 int x = 2465;
65 int h = 3500;
66 unsigned char r, g, b;
67 64
68 for ( int y=0; y<h; y++ ) { 65 GetScore( &z, &l, file );
69 r = img.GetRed( x, y );
70 g = img.GetGreen( x, y );
71 b = img.GetBlue( x, y );
72 if( IsBlack( (int)r, (int)g, (int)b ) ) black++;
73 }
74 float z = (float)black / h;
75
76 wxFile f( file );
77 long l = f.Length();
78
79 //wxPuts(wxString::Format(wxT("z = %f, len = %d"),z,l)); 66 //wxPuts(wxString::Format(wxT("z = %f, len = %d"),z,l));
80 if ( zmin < z && z < zmax 67 if ( zmin < z && z < zmax
81 && lmin < l && l < lmax ) { 68 && lmin < l && l < lmax ) {
82 return true; 69 return true;
83 } 70 }
84 return false; 71 return false;
85 } 72 }
86 73
74 void GetScore( float* z, long* l, wxString file )
75 {
76 wxImage img( file, wxBITMAP_TYPE_JPEG );
77 int black = 0;
78 int x = 2465;
79 int h = 3500;
80 unsigned char r, g, b;
81
82 for ( int y = 0; y < h; y++ ) {
83 r = img.GetRed( x, y );
84 g = img.GetGreen( x, y );
85 b = img.GetBlue( x, y );
86 if( IsBlack( (int)r, (int)g, (int)b ) ) black++;
87 }
88 *z = (float)black / h;
89
90 wxFile f( file );
91 *l = f.Length();
92 }
87 93
88 wxString GetHhsName( wxString& hhsno ) 94 wxString GetHhsName( wxString& hhsno )
89 { 95 {
90 wxString name; 96 wxString name;
91 97