CreateQr("test",Null,File.DirDocuments,"test.png")
Sub CreateQr(Text As String, IV As ImageView,Dir As String, PNGName As String)
Dim NativeMe As NativeObject = Me
Dim QRImage As Bitmap = NativeMe.RunMethod("createQRForString:", Array (Text))
If IV.IsInitialized Then IV.Bitmap = QRImage
Dim pn As Panel
pn.Initialize("")
pn.Height = QRImage.Height
pn.Width = QRImage.Width
Dim Dest As Rect
Dest.Initialize(0,0,QRImage.Width,QRImage.Height)
Dim Ca As Canvas
Ca.Initialize(pn)
Ca.DrawBitmap(QRImage,Dest)
Ca.Refresh
Dim Out As OutputStream
Out = File.OpenOutput(Dir, PNGName,False)
Ca.CreateBitmap.WriteToStream(Out, 100,"PNG")
Out.Close
#If OBJC
- (UIImage *)createQRForString:(NSString *)qrString
{
// Need To convert the string To a UTF-8 encoded NSData object
NSData *stringData = [qrString dataUsingEncoding: NSISOLatin1StringEncoding];
// Create the filter
CIFilter *qrFilter = [CIFilter filterWithName:@"CIQRCodeGenerator"];
// Set the message content And error-correction level
[qrFilter setValue:stringData forKey:@"inputMessage"];
[qrFilter setValue:@"M" forKey:@"inputCorrectionLevel"];
// Remove blur effect with scaling
CGAffineTransform transform = CGAffineTransformMakeScale(100.0f,100.0f);
CIImage *qrOutput = [qrFilter.outputImage imageByApplyingTransform: transform];
//Convert CIImage to UIImage
UIImage *qrImage = [[UIImage alloc] initWithCIImage:qrOutput];
return qrImage;
}
#End If
End Sub