问题描述
在网上下了个ThoughtWorks.QRCode.dll文件然后也生成了二维码,但是只能是英文,中文会出现乱码,在网上找的解决办法是修改dll中的类,可是该如何修改dll里的类啊?在网上见到一份源码是不是ThoughtWorks.QRCode.dll有源码文件?ThoughtWorks.QRCode.dll有没有官网之类的一些详细信息呢?另外:怎么样能在二维码中加图片呢?
解决方案
解决方案二:
生成前转义中文字符不完事了stringcode=Server.UrlEncode("网址");
解决方案三:
引用1楼liuchaolin的回复:
生成前转义中文字符不完事了stringcode=Server.UrlEncode("网址");
这个需要它的方法转,方法被封装了,方法的参数是一个字符串转完是System.Drawing.Bitmap类型的。
解决方案四:
不需要吧,那你怎么用啊
解决方案五:
引用3楼liuchaolin的回复:
不需要吧,那你怎么用啊
Encoder.QRCodeEncodeMode=QRCodeEncoder.ENCODE_MODE.BYTE;Encoder.QRCodeErrorCorrect=QRCodeEncoder.ERROR_CORRECTION.H;Encoder.QRCodeScale=3;Encoder.QRCodeVersion=8;//stringcode=Server.UrlEncode(this.txtSourc.Text.Trim().ToString());System.Drawing.Bitmapimage=Encoder.Encode(this.txtSourc.Text.Trim().ToString());//System.Drawing.Imageimages=Encoder.Encode(this.txtSourc.Text.Trim());System.IO.MemoryStreamMStream=newSystem.IO.MemoryStream();image.Save(MStream,System.Drawing.Imaging.ImageFormat.Gif);Response.ClearContent();Response.ContentType="image/Gif";Response.BinaryWrite(MStream.ToArray());
解决方案六:
stringcode=Server.UrlEncode(this.txtSourc.Text.Trim().ToString());System.Drawing.Bitmapimage=Encoder.Encode(code);这样不行?
解决方案七:
引用5楼liuchaolin的回复:
stringcode=Server.UrlEncode(this.txtSourc.Text.Trim().ToString());System.Drawing.Bitmapimage=Encoder.Encode(code);这样不行?
这样生成出来的也是乱码呀!
解决方案八:
你的内容是什么?
解决方案九:
引用7楼liuchaolin的回复:
你的内容是什么?
输入英文及数字都正常输入中文就出乱码!
解决方案十:
你填的是文字信息还是网址信息?
解决方案十一:
Encode(data,Encoding.UTF8);Encoding.UTF8加上这个试一试
解决方案十二:
问题解决了没有啊!!!???
解决方案十三:
引用10楼lcleader的回复:
Encode(data,Encoding.UTF8);Encoding.UTF8加上这个试一试
就是这个
解决方案十四:
Encode(data,Encoding.UTF8);Encoding.UTF8这个加在哪儿啊?
解决方案十五:
但是这个解码,好像对字符串的长度有限定吧。中文过多了就不行了
解决方案:
Encode(data,Encoding.UTF8);这个东西加上去就提示错误了,还没弄出来,哪位大神指导一下,呵呵
解决方案:
System.Text.Encoding.Unicode
解决方案:
只支持122位长度,如何突破这个限制呀?
解决方案:
UTF8Encodingencoding=newUTF8Encoding();
解决方案:
不知道楼主解决问题没有,我也碰到了这个问题,打但是解决了,其实就是加一个编码就行了Imageimage;image=qrCodeEncoder.Encode(data,Encoding.UTF8);MemoryStreamms=newMemoryStream();image.Save(ms,System.Drawing.Imaging.ImageFormat.Bmp);byte[]bt=ms.ToArray();这里的data就是我的数据然后就在生成image的时候加一个Encoding.UTF8
解决方案:
引用楼主trek365的回复:
在网上下了个ThoughtWorks.QRCode.dll文件然后也生成了二维码,但是只能是英文,中文会出现乱码,在网上找的解决办法是修改dll中的类,可是该如何修改dll里的类啊?在网上见到一份源码是不是ThoughtWorks.QRCode.dll有源码文件?ThoughtWorks.QRCode.dll有没有官网之类的一些详细信息呢?另外:怎么样能在二维码中加图片呢?
源代码编码定义有错。网上有修正过的dll。你也可以自己改一下。
解决方案:
我想用这个dll生成打印二维码,怎么做呢
解决方案:
ThoughtWorks.QRCode.dll有没有源码文件?求各位大神共享啊denyan7373@163.com谢谢各位了
解决方案:
支持中文的二维码组件,改过内部代码的,共享给各位。http://pan.baidu.com/s/1i3oq8o1
解决方案:
usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Text;usingSystem.Threading.Tasks;usingGma.QrCodeNet.Encoding.Common;usingSystem.IO;usingGma.QrCodeNet.Encoding;usingGma.QrCodeNet.Encoding.Windows.Render;usingSystem.Drawing.Imaging;namespaceQRDemo{//二维码生成classQRCodeHelper{publicstaticboolCreate(stringcontent,intmoduleSize,MemoryStreamms){stringContent=content;//待编码内容intModuleSize=moduleSize;//大小ErrorCorrectionLevelEcl=ErrorCorrectionLevel.M;//误差校正水平QuietZoneModulesQuietZones=QuietZoneModules.Two;//空白区域varencoder=newQrEncoder(Ecl);QrCodeqr;if(encoder.TryEncode(Content,outqr))//对内容进行编码,并保存生成的矩阵{varrender=newGraphicsRenderer(newFixedModuleSize(ModuleSize,QuietZones));render.WriteToStream(qr.Matrix,ImageFormat.Png,ms);}else{returnfalse;}returntrue;}}}
不知道怎么附加图片你知道了可以告诉我
解决方案:
Quote: 引用24楼moonwrite的回复:
解决方案:解决方案:
我也不知道qt+vs如何包含QAxObject这个头文件时间: 2025-01-27 22:46:38