当前位置:首页 > 网站源码 > 正文内容

添加到源代码管理(如何给源代码加密)

网站源码1年前 (2024-07-03)263

背景

二维码是越来越流行了,很多地方都有可能是使用到。如果是静态的二维码还是比较好处理的,通过在线工具就可以直接生成一张二维码图片,比如:草料二维码。但有的时候是需要动态生成的(根据动态数据生成),这个使用在线就工具就无法实现了。最好是能在代码中直接生成一个二维码图片,这里我就介绍下使用QRCoder类库在代码中生成二维码。

网上生成二维码的组件还是挺多的,但是真正好用且快速的却不多。QRCoder就是我在众多中找到的,它的生成速度快、而且使用也相当方便。

开始编码

1、安装 QRCoder组件。在项目上通过NuGet包管理器来安装,搜索名称:QRCoder

2、在代码中添加引用:using QRCoder;

3、编码生成

pictureBoxQRCode.BackgroundImage = qrCode.GetGraphic( 20, Color.Black, Color.White, GetIconBitmap, ( int) iconSize.Value);

this.pictureBoxQRCode.Size = newSystem.Drawing.Size(pictureBoxQRCode.Width, pictureBoxQRCode.Height); //Set the SizeMode to center the image.this.pictureBoxQRCode.SizeMode = PictureBoxSizeMode.CenterImage;

pictureBoxQRCode.SizeMode = PictureBoxSizeMode.StretchImage;}}}}

运行效果

上面代码运行的结果

加个Logo吧

添加到源代码管理(如何给源代码加密)

还可以加上logo

完整代码

namespaceQRCoderDemo{publicpartialclassForm1: Form{publicForm1( ) {InitializeComponent;}

privatevoidForm1_Load( objectsender, EventArgs e ) {comboBoxECC.SelectedIndex = 0; //Pre-select ECC level "L"RenderQrCode;}

展开全文

privatevoidbuttonGenerate_Click( objectsender, EventArgs e ) {RenderQrCode;}

privatevoidRenderQrCode( ) {stringlevel = comboBoxECC.SelectedItem.ToString; QRCodeGenerator.ECCLevel eccLevel = (QRCodeGenerator.ECCLevel)(level == "L"? 0: level == "M"? 1: level == "Q"? 2: 3); using(QRCodeGenerator qrGenerator = newQRCodeGenerator) {using(QRCodeData qrCodeData = qrGenerator.CreateQrCode(textBoxQRCode.Text, eccLevel)) {using(QRCode qrCode = newQRCode(qrCodeData)) {

pictureBoxQRCode.BackgroundImage = qrCode.GetGraphic( 20, Color.Black, Color.White, GetIconBitmap, ( int) iconSize.Value);

this.pictureBoxQRCode.Size = newSystem.Drawing.Size(pictureBoxQRCode.Width, pictureBoxQRCode.Height); //Set the SizeMode to center the image.this.pictureBoxQRCode.SizeMode = PictureBoxSizeMode.CenterImage;

pictureBoxQRCode.SizeMode = PictureBoxSizeMode.StretchImage;}}}}

privateBitmap GetIconBitmap( ) {Bitmap img = null; if(iconPath.Text.Length > 0) {try{img = newBitmap(iconPath.Text); }catch(Exception) {}}returnimg; }

privatevoidselectIconBtn_Click( objectsender, EventArgs e ) {OpenFileDialog openFileDlg = newOpenFileDialog; openFileDlg.Title = "Select icon"; openFileDlg.Multiselect = false; openFileDlg.CheckFileExists = true; if(openFileDlg.ShowDialog == System.Windows.Forms.DialogResult.OK) {iconPath.Text = openFileDlg.FileName;if(iconSize.Value == 0) {iconSize.Value = 15; }}else{iconPath.Text = ""; }}

privatevoidbtn_save_Click( objectsender, EventArgs e ) {

// Displays a SaveFileDialog so the user can save the ImageSaveFileDialog saveFileDialog1 = newSaveFileDialog; saveFileDialog1.Filter = "Bitmap Image|*.bmp|PNG Image|*.png|JPeg Image|*.jpg|Gif Image|*.gif"; saveFileDialog1.Title = "Save an Image File"; saveFileDialog1.ShowDialog;

// If the file name is not an empty string open it for saving.if(saveFileDialog1.FileName != "") {// Saves the Image via a FileStream created by the OpenFile method.using(FileStream fs = (System.IO.FileStream) saveFileDialog1.OpenFile) {// Saves the Image in the appropriate ImageFormat based upon the// File type selected in the dialog box.// NOTE that the FilterIndex property is one-based.

ImageFormat imageFormat = null; switch(saveFileDialog1.FilterIndex) {case1: imageFormat = ImageFormat.Bmp;break; case2: imageFormat = ImageFormat.Png;break; case3: imageFormat = ImageFormat.Jpeg;break; case4: imageFormat = ImageFormat.Gif;break; default: thrownewNotSupportedException( "File extension is not supported"); }

pictureBoxQRCode.BackgroundImage.Save(fs, imageFormat);fs.Close;}}

}

publicvoidExportToBmp( stringpath ) {

}

privatevoidtextBoxQRCode_TextChanged( objectsender, EventArgs e ) {RenderQrCode;}

privatevoidcomboBoxECC_SelectedIndexChanged( objectsender, EventArgs e ) {RenderQrCode;}}}

扫描二维码推送至手机访问。

版权声明:本文由我的模板布,如需转载请注明出处。


本文链接:http://www.xswglasses.com/post/67881.html

分享给朋友:

“添加到源代码管理(如何给源代码加密)” 的相关文章

宝塔面板搭建小程序后端(宝塔面板搭建微信小程序)

宝塔面板搭建小程序后端(宝塔面板搭建微信小程序)

今天给各位分享宝塔面板搭建小程序后端的知识,其中也会对宝塔面板搭建微信小程序进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、宝塔面板搭建h5小游戏网站需要安装...

少年三国志零下载地址(少年三国志零微信版)

少年三国志零下载地址(少年三国志零微信版)

本篇文章给大家谈谈少年三国志零下载地址,以及少年三国志零微信版对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、少年三国志:零安卓下载地址是多少? 2、少年三国志下载地址...

周杰伦入局元宇宙裴(周杰伦元宇宙平台)

周杰伦入局元宇宙裴(周杰伦元宇宙平台)

本篇文章给大家谈谈周杰伦入局元宇宙裴,以及周杰伦元宇宙平台对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、周杰伦也入局元宇宙,40分钟1万张NFT被卖空,背后有何风险?...

17173游戏交易平台代理(17173手游交易平台)

17173游戏交易平台代理(17173手游交易平台)

本篇文章给大家谈谈17173游戏交易平台代理,以及17173手游交易平台对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、17173淘金城网络游戏交易平台,交易安全吗?他会人...

java源码怎么打包(java源码打包apk)

java源码怎么打包(java源码打包apk)

今天给各位分享java源码怎么打包的知识,其中也会对java源码打包apk进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、如何将java源程序打包成可执行文件...

逆光游戏交易平台提现多久到账(逆光游戏交易平台怎么样)

逆光游戏交易平台提现多久到账(逆光游戏交易平台怎么样)

本篇文章给大家谈谈逆光游戏交易平台提现多久到账,以及逆光游戏交易平台怎么样对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、网游交易平台提现余额大概什么时候到账 2、在网...