반응형

 

 

PictureBoxIpl의 SizeMode 정리.

이미지를 PictureBox에 출력했는데 이미지가 잘려서 나왔다.

그래서 SizeMode를 Zomm으로 조절해서 이미지가 다 나오도록 하였다.

 

SizeMode에 대한 세부 내용을 검색해서 확인해 보았다.

 

 

각각의 설정이 의미하는 아래와 같았다.

 

 

위 필드 내용에 대한 자세한 내용은 아래 링크 참조.

 

 

PictureBoxSizeMode 열거형 (System.Windows.Forms)

PictureBox 내에 이미지가 놓이는 방식을 지정합니다.Specifies how an image is positioned within a PictureBox.

docs.microsoft.com

실제 SizeMode에 따라 적용되는 내용을 확인해 보았다.

 

 

제일 왼쪽 부터.

 

Zoom, Normal, StretchImage, AutoSize, CenterImage

 

 

아래와 같이 다시 정리해 보았다.

 

Zoom : 컨트롤의 크기에 맞게 전체 이미지가 조절된다. 비율을 유지하면서

Nomal : 이미지가 컨트롤의 크기보다 크면 컨트롤의 크기만큼 표시되고 잘린다.

StretchImage : 이미지가 컨트롤에 맞게 늘어나거나 줄어든다.

AutoSize : 이미지크기에 맞게 컨트롤의 크기가 변경된다.

CenterImage : 이미지가 컨트롤의 가운데 배치되고 나머지 영역은 잘린다.

 

 

 

728x90
반응형

'공부 > C#' 카테고리의 다른 글

210304 C# Winform 첫 번째 클래스  (0) 2021.03.15
210307 C# 커서위치 제어 프로그램  (0) 2021.03.07
210208 C# Barcode reader project (2)  (1) 2021.02.11
210202 C# Barcode reader project (1)  (0) 2021.02.10
210202 OpenCV PictureBoxlpl  (0) 2021.02.09
반응형

 

 

Image에서 Barcode를 인식하는 프로그램을 구현해 보았다.

Barcode가 있는 이미지를 만들기 위해 InkScape를 이용하였다.

 

kgkang.tistory.com/146?category=422967

 

210204 잉크스케이프 바코드 생성

잉크스케이프(Inkscape)에서 바코드를 생성하는 방법. 바코드가 있는 PDF 문서를 생성하기 위해 바코드를 생성하기 위해 바코드 생성 메뉴를 찾았다. "확장기능 >> 렌더 >> 바코드" 에서 원하는 바코

kgkang.tistory.com

 

바코드 인식은 ZXing 라이브러리를 사용하였다.

그래서 Nuget으로 ZXing 라이브러리를 설치한다.

 

 

ZXing.Net 이 설치되었다.

 

 

Barcode 버튼을 만들고 코드를 추가한다.

pictureBoxlpl의 이름을 아래와 같이 지정하고 코딩하였다.

 

 

아래와 같이 코딩하여 간단히 바코드를 인식할 수 있다.

이미지를 읽고 표시할 때는 OpenCV를 사용하였다.

 

using OpenCvSharp;
using ZXing;

private void btnBarcode_Click(object sender, EventArgs e)
{
  src = Cv2.ImRead("c:\\tmp\\inkscape.png", ImreadModes.Color);
  pictureBoxIplImage.ImageIpl = src;
  BarcodeReader reader = new BarcodeReader();
  Result result = reader.Decode((Bitmap)pictureBoxIplImage.Image);
  if (result != null)
  {
    decoded = "Decode : " + result.ToString() + "\r\nType : " + result.BarcodeFormat.ToString();
    if (decoded != "")
    { 
      textBoxResult.Text = decoded;
    } 
  } 
  else 
    MessageBox.Show("바코드나 QR코드를 비추세요!");
}

 

아래 이미지는 실제 사용한 코드를 화면 캡춰한 것이다.

 

 

아래와 같이 바코드가 인식되어 출력된다. 

바코드의 내용은 Inkscape, Type은 DATA_MATRIX 이다.

 

 

 

728x90
반응형

'공부 > C#' 카테고리의 다른 글

210212 OpenCV C# PictureBoxIpl SizeMode  (0) 2021.02.12
210208 C# Barcode reader project (2)  (1) 2021.02.11
210202 OpenCV PictureBoxlpl  (0) 2021.02.09
210128 Pdf2Image winform project (4)  (0) 2021.02.07
210126 Pdf2Image winform project (3)  (0) 2021.02.05
반응형

 

 

OpenCV PictureBoxlpl 설치.

 

바코드 인식 프로그램을 구현하기 위해 찾던 중 Zxing을 알게 되었다.

이것을 사용하는 C# 예제를 검색하니 OpenCV 가 필요해서 우선 OpenCV 부터 설치했다.

 

NuGet 패키지 관리자에서 OpenCvSharp4를 검색하여 설치.

 

 

가장 최신 버전 이라서 설치했다.

 

 

그런데 설치를 해도 원하는 PictureBoxlpl 도구가 나오지 않았다.

 

그래서 OpenCV를 다시 검색해서 OpenCVSharp3-AnyCPU를 설치.

 

 

설치가 완료되었다.

 

 

Winform을 연 상태에서 도구상자를 선택하니 OpenCVSharp.UserInterface가 등록되어 있다.

참고로 소스가 열린 상태에서 도구상자를 선택하면 도구가 나타나지 않는다.

 

 

PictureBoxlpl 도구를 선택하여 Winform에 배치해 보았다.

이제 OpenCV를 사용할 준비가 되었다. ^^

 

 

 

 

728x90
반응형

'공부 > C#' 카테고리의 다른 글

210208 C# Barcode reader project (2)  (1) 2021.02.11
210202 C# Barcode reader project (1)  (0) 2021.02.10
210128 Pdf2Image winform project (4)  (0) 2021.02.07
210126 Pdf2Image winform project (3)  (0) 2021.02.05
210125 Pdf2Image winform project (2)  (0) 2021.02.01

+ Recent posts