Пример #1
0
        private void button4_Click(object sender, EventArgs e)
        {
            textBox4.Text = "";
            textBox4.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            ini.SetIniValue("주민번호", "X", startX.ToString());
            ini.SetIniValue("주민번호", "Y", startY.ToString());
            ini.SetIniValue("주민번호", "가로", width.ToString());
            ini.SetIniValue("주민번호", "세로", height.ToString());
        }
Пример #2
0
        // 기울기 보정
        private void button51_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            Bitmap source = Global.source;

            // create grayscale filter (BT709)
            Grayscale filter = new Grayscale(0.2125, 0.7154, 0.0721);       // 8비트 grayscale 로 바꾸고
            // apply the filter
            Bitmap grayImage = filter.Apply(source);

            grayImage.Save(@"C:\\Program Files\\PLOCR\\그레이스케일.png");

            // create instance of skew checker
            DocumentSkewChecker skewChecker = new DocumentSkewChecker();        // 8비트 grayscale 로 넣어줘야 함
            //    // get documents skew angle
            double angle = skewChecker.GetSkewAngle(grayImage);  // 기울어진 각도를 얻고

            Bitmap tmp = source;
            // convert to 24 bits per pixel
            source = imageProcess.Clone(tmp, PixelFormat.Format24bppRgb);       // 로테이션 전에 24비트로 바꿔주고
            // delete old image
            tmp.Dispose();

            // create rotation filter
            RotateBilinear rotationFilter = new RotateBilinear(-angle);
            rotationFilter.FillColor = Color.White;
            // rotate image applying the filter
            Bitmap rotatedImage = rotationFilter.Apply(source);  // 원래 이미지를 가져다가 각도만큼 돌리고(원래 이미지는 24비트로 넣어줘야함)

            Global.source = rotatedImage;
            pictureBox1.Image = Global.source;
            pictureBox1.Invalidate();

            ini.SetIniValue("기울어짐 바로잡기", "바로잡기 예/아니오", "예");
        }
Пример #3
0
        private void button35_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            ini.SetIniValue("선굵기값", "굵게횟수", textBox24.Text.ToString());
            ini.SetIniValue("선굵기값", "가늘게횟수", textBox25.Text.ToString());
            MessageBox.Show("선 굵기 값 저장되었습니다.");
        }
Пример #4
0
        // 선 가늘게
        private void button36_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            Bitmap source = Global.source;
            Bitmap tmp = source;
            // convert to 24 bits per pixel
            source = imageProcess.Clone(tmp, PixelFormat.Format24bppRgb);
            // delete old image
            tmp.Dispose();

            Dilatation filter = new Dilatation();
            filter.ApplyInPlace(source);

            Global.source = source;
            pictureBox1.Image = Global.source;
            pictureBox1.Invalidate();

            textBox25.Text = (int.Parse(textBox25.Text) + 1).ToString();
            ini.SetIniValue("선굵기값", "가늘게횟수", textBox25.Text.ToString());

            //string path = calculator.CreateFileCheck("C:\\Program Files\\PLOCR\\prescription.png");
            //pictureBox1.Image.Save(path);
        }
Пример #5
0
        // 실행 순서 저장
        private void button30_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            string path = @"C:\Program Files\PLOCR\prescription.png";
            Bitmap source = (Bitmap)Bitmap.FromFile(path);

            source = calculator.sequence(source);
            source = calculator.originalcheck(source);

            Global.source.Save(@"C:\Program Files\PLOCR\processedprescription.png");

            ini.SetIniValue("실행 순서", "1단계", comboBox8.Text);
            ini.SetIniValue("실행 순서", "2단계", comboBox9.Text);
            ini.SetIniValue("실행 순서", "3단계", comboBox10.Text);
            ini.SetIniValue("실행 순서", "4단계", comboBox11.Text);
            ini.SetIniValue("실행 순서", "5단계", comboBox12.Text);
            ini.SetIniValue("실행 순서", "6단계", comboBox13.Text);
            ini.SetIniValue("실행 순서", "7단계", comboBox14.Text);

            MessageBox.Show("실행 순서 저장되었습니다.");
        }
Пример #6
0
        // 밝기값 밝게 하기, 횟수 기록
        private void button32_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            //Bitmap source = (Bitmap)pictureBox1.Image;

            Bitmap source = Global.source;

            // create filter
            BrightnessCorrection filter = new BrightnessCorrection(+10);
            // apply the filter
            filter.ApplyInPlace(source);

            Global.source = source;

            pictureBox1.Image = Global.source;
            pictureBox1.Invalidate();

            textBox22.Text = (int.Parse(textBox22.Text) + 1).ToString();
            ini.SetIniValue("밝기값", "밝게횟수", textBox22.Text.ToString());

            //string path = calculator.CreateFileCheck("C:\\Program Files\\PLOCR\\prescription.png");
            //pictureBox1.Image.Save(path);
        }
Пример #7
0
        // 특정영역2에서 좌표1번, 좌표2번 텍스트 탐색하여 좌표 저장
        private void button24_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            int x = int.Parse(ini.GetIniValue("특정좌표영역2", "X"));
            int y = int.Parse(ini.GetIniValue("특정좌표영역2", "Y"));
            int width = int.Parse(ini.GetIniValue("특정좌표영역2", "가로"));
            int height = int.Parse(ini.GetIniValue("특정좌표영역2", "세로"));

            //Bitmap source = (Bitmap)pictureBox1.Image;
            //string path = @"C:\Program Files\PLOCR\prescription.png";
            //Bitmap source = (Bitmap)Bitmap.FromFile(path);

            Bitmap source = Global.source;
            string htext = OcrEngine.hocr(source, x, y, width, height);

            if (radioButton1.Checked == true)
            {
                int standardX, standardY, standardWidth, standardHeight;
                standardXY.startXY(htext, ini.GetIniValue("좌표텍스트", "좌표1번"), out standardX, out standardY, out standardWidth, out standardHeight);
                ini.SetIniValue("스캔으로 찾은 좌표1번", "X", standardX.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표1번", "Y", standardY.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표1번", "가로", standardWidth.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표1번", "세로", standardHeight.ToString());
            }
            else if (radioButton2.Checked == true)
            {
                int standardX, standardY, standardWidth, standardHeight;
                standardXY.startXY(htext, ini.GetIniValue("좌표텍스트", "좌표2번"), out standardX, out standardY, out standardWidth, out standardHeight);
                ini.SetIniValue("스캔으로 찾은 좌표2번", "X", standardX.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표2번", "Y", standardY.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표2번", "가로", standardWidth.ToString());
                ini.SetIniValue("스캔으로 찾은 좌표2번", "세로", standardHeight.ToString());
            }
            else
            {
                MessageBox.Show("\"좌표1번 찾기\" 또는 \"좌표2번 찾기\"를 체크해주세요.");
            }
        }
Пример #8
0
        // 색상 반전을 통한 배경값을 저장한다.
        private void button29_Click_1(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            if (radioButton3.Checked == true)
            {
                ini.SetIniValue("색상 반전값", "배경", "흰배경");
                MessageBox.Show("흰배경으로 저장되었습니다.");
            }
            else if (radioButton4.Checked == true)
            {
                ini.SetIniValue("색상 반전값", "배경", "검은배경");
                MessageBox.Show("검은배경으로 저장되었습니다.");
            }
            else
            {
                MessageBox.Show("색상 반전 배경색을 체크해주세요.");
            }
        }
Пример #9
0
        // 특정영역2를 읽고 좌표를 저장하고, 변환된 텍스트를 보여준다.
        private void button23_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            ini.SetIniValue("특정좌표영역2", "X", startX.ToString());
            ini.SetIniValue("특정좌표영역2", "Y", startY.ToString());
            ini.SetIniValue("특정좌표영역2", "가로", width.ToString());
            ini.SetIniValue("특정좌표영역2", "세로", height.ToString());

            //Bitmap source = (Bitmap)pictureBox1.Image;
            //string path = @"C:\Program Files\PLOCR\prescription.png";
            //Bitmap source = (Bitmap)Bitmap.FromFile(path);

            Bitmap source = Global.source;
            OcrEngine.hocr(source, startX, startY, width, height);

            try
            {
                System.Diagnostics.Process.Start(@"C:\Program Files\PLOCR\textrecognition.html");
            }
            catch { }
        }
Пример #10
0
        private void textBox15_TextChanged(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            ini.SetIniValue("좌표텍스트", "좌표2번", textBox15.Text);
        }
Пример #11
0
        // private void pictureBox1_Paint(object sender, PaintEventArgs e)  // 처방 이미지 위에, 설정한 좌표 사각형을 모두 표시한다.
        // {
        //     Bitmap myBitmap = new Bitmap(@"C:\Program Files\PLOCR\prescription.png");
        //     Graphics gs = Graphics.FromImage(myBitmap);
        ////     Rectangle rect = new Rectangle(0, 0, 50, 100);
        //     Rectangle[] multirect = { new Rectangle(0, 0, 100, 200), new Rectangle(350, 90, 400, 200) };
        //     Pen p = new Pen(new SolidBrush(Color.Red));
        //     Pen p1 = new Pen(new SolidBrush(Color.Orange));
        // //    gs.DrawRectangle(p1, rect);
        //     gs.DrawRectangles(p, multirect); //draw more two rectangles
        //     //myBitmap.Dispose();
        //     //gs.Dispose();
        // }
        private void comboBox5_SelectedIndexChanged(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            switch (comboBox5.SelectedIndex)
            {
                case 0:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("1번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("1번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("1번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("1번 약품코드", "세로", height.ToString());

                    break;
                case 1:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("2번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("2번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("2번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("2번 약품코드", "세로", height.ToString());

                    break;
                case 2:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("3번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("3번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("3번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("3번 약품코드", "세로", height.ToString());

                    break;
                case 3:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("4번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("4번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("4번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("4번 약품코드", "세로", height.ToString());

                    break;
                case 4:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("5번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("5번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("5번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("5번 약품코드", "세로", height.ToString());

                    break;
                case 5:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("6번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("6번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("6번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("6번 약품코드", "세로", height.ToString());

                    break;
                case 6:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("7번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("7번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("7번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("7번 약품코드", "세로", height.ToString());

                    break;
                case 7:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("8번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("8번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("8번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("8번 약품코드", "세로", height.ToString());

                    break;
                case 8:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("9번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("9번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("9번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("9번 약품코드", "세로", height.ToString());

                    break;
                case 9:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("10번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("10번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("10번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("10번 약품코드", "세로", height.ToString());

                    break;
                case 10:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("11번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("11번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("11번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("11번 약품코드", "세로", height.ToString());

                    break;
                case 11:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("12번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("12번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("12번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("12번 약품코드", "세로", height.ToString());

                    break;
                case 12:
                    textBox9.Text = "";
                    textBox9.Text += String.Format("{0}:{1}:{2}:{3}", startX.ToString(), startY.ToString(), width.ToString(), height.ToString());

                    ini.SetIniValue("13번 약품코드", "X", startX.ToString());
                    ini.SetIniValue("13번 약품코드", "Y", startY.ToString());
                    ini.SetIniValue("13번 약품코드", "가로", width.ToString());
                    ini.SetIniValue("13번 약품코드", "세로", height.ToString());

                    break;
            }
        }
Пример #12
0
        private void checkBox1_CheckedChanged(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            if (checkBox1.Checked)
            {
                ini.SetIniValue("약품영역사용", "사용여부", "1");
            }
            else
            {
                ini.SetIniValue("약품영역지정", "사용여부", "0");
            }
        }
Пример #13
0
        // opening
        private void button56_Click(object sender, EventArgs e)
        {
            ///////////// ini 객체 생성 시작 /////////////////////////////////////////////////////
            //현재 프로그램이 실행되고 있는정보 가져오기: 디버깅 모드라면 bin/debug/프로그램명.exe
            FileInfo exefileinfo = new FileInfo(@"C:\Program Files\PLOCR\PLOCR.exe");
            string pathini = exefileinfo.Directory.FullName.ToString();  //프로그램 실행되고 있는데 path 가져오기
            string fileName = @"\PLOCRconfig.ini";  // 환경설정 파일명
            string filePath = pathini + fileName;   //ini 파일 경로
            DocumentAnalysis.IniUtil ini = new DocumentAnalysis.IniUtil(filePath);   // 만들어 놓았던 iniUtil 객체 생성(생성자 인자로 파일경로 정보 넘겨줌)
            //////////// ini 객체 생성 끝 /////////////////////////////////////////////////////////

            Bitmap source = Global.source;
            Bitmap tmp = source;
            // convert to 24 bits per pixel
            source = imageProcess.Clone(tmp, PixelFormat.Format24bppRgb);
            // delete old image
            tmp.Dispose();

            // create filter
            Opening filter = new Opening();
            // apply the filter
            filter.Apply(source);

            Global.source = source;
            pictureBox1.Image = Global.source;
            pictureBox1.Refresh();

            textBox27.Text = (int.Parse(textBox24.Text) + 1).ToString();
            ini.SetIniValue("opening", "opening횟수", textBox27.Text.ToString());
        }