이 글은 기계 번역의 미러 문서이며, 원본 기사로 바로 이동하려면 여기를 클릭해 주세요.

보기: 21794|회답: 1

[WPF] C# WPF는 ZXing을 사용해 QR 코드를 생성합니다. ImageSource 소개

[링크 복사]
게시됨 2015. 12. 14. 오후 2:39:24 | | | |
소개: WPF 양식 프로그램에서 다음 QR 코드 이미지 생성 기능을 사용해야 한다면, 이 글의 방법을 통해 구현할 수 있습니다.
단계: 1. http://zxingnet.codeplex.com/ 사이트에서 ZXing을 다운로드하세요. .net
2. 다운로드를 마친 후, 다양한 타겟이 있다는 것을 알 수 있습니다. 프로젝트에서 올바른 dll을 참조하는 .NET 버전의 dll 파일
3. 그 다음 프로젝트의 System.Drawing assembly를 참조하세요
4. QR 코드를 생성해야 하는 창에 다음 코드를 추가하세요:

  1. // 注销对象方法API

  2. [DllImport("gdi32")]

  3. static extern int DeleteObject(IntPtr o);



  4. /**

  5. * 创建二维码图片

  6. */

  7. private ImageSource createQRCode(String content, int width, int height)

  8. {

  9.     EncodingOptions options;//包含一些编码、大小等的设置

  10.     BarcodeWriter write = null;//用来生成二维码,对应的BarcodeReader用来解码

  11.     options = new QrCodeEncodingOptions

  12.     {

  13.         DisableECI = true,

  14.         CharacterSet = "UTF-8",

  15.         Width = width,

  16.         Height = height,

  17.         Margin = 0

  18.     };

  19.     write = new BarcodeWriter();

  20.     write.Format = BarcodeFormat.QR_CODE;

  21.     write.Options = options;

  22.     Bitmap bitmap = write.Write(content);

  23.     IntPtr ip = bitmap.GetHbitmap();

  24.     BitmapSource bitmapSource = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(

  25.         ip, IntPtr.Zero, Int32Rect.Empty,

  26.         System.Windows.Media.Imaging.BitmapSizeOptions.FromEmptyOptions());

  27.     DeleteObject(ip);

  28.     return bitmapSource;

  29. }
코드 복사
5. createQRCode에 호출하여 QR 코드의 ImageSource 생성을 완료한 후 Image를 사용해 QR 코드를 표시합니다.





이전의:.net 리스트 및 배열
다음:C#은 IP 주소를 생성할 IP 세그먼트를 지정합니다
게시됨 2015. 12. 14. 오후 3:55:03 |
면책 조항:
Code Farmer Network에서 발행하는 모든 소프트웨어, 프로그래밍 자료 또는 기사는 학습 및 연구 목적으로만 사용됩니다; 위 내용은 상업적 또는 불법적인 목적으로 사용되지 않으며, 그렇지 않으면 모든 책임이 사용자에게 부담됩니다. 이 사이트의 정보는 인터넷에서 가져온 것이며, 저작권 분쟁은 이 사이트와는 관련이 없습니다. 위 내용은 다운로드 후 24시간 이내에 컴퓨터에서 완전히 삭제해야 합니다. 프로그램이 마음에 드신다면, 진짜 소프트웨어를 지원하고, 등록을 구매하며, 더 나은 진짜 서비스를 받아주세요. 침해가 있을 경우 이메일로 연락해 주시기 바랍니다.

Mail To:help@itsvse.com