public void GetQrCodeGeolocation(string latitude, string longtitude)
        {
            Geolocation generator = new Geolocation(latitude, longtitude);
            string      payload   = generator.ToString();

            QRCodeGenerator qrGenerator    = new QRCodeGenerator();
            QRCodeData      qrCodeData     = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.Q);
            QRCode          qrCode         = new QRCode(qrCodeData);
            var             qrCodeAsBitmap = qrCode.GetGraphic(20);


            //string pathToSave = ConfigurationManager.AppSettings["qrCodesOutputDirectory"];
            //string fileName = $"{Guid.NewGuid().ToString()}.png";

            using (MemoryStream ms = new MemoryStream())
            {
                qrCodeAsBitmap.Save(ms, ImageFormat.Png);
                _qrCodeRepository.AddGeo(new QRCodeEntity()
                {
                    UserId     = 1,
                    QrCodeType = QrCodeType.TextEncodedQrCode,
                    Content    = ms.ToArray()
                });
            }
        }
Ejemplo n.º 2
0
        public byte[] GetQrCodeShippingInfo(Purchase purchase, out string path)
        {
            byte[] tmp       = null;
            Random rnd       = new Random();
            double latitude  = Math.Round(43 + rnd.NextDouble(), 5);
            double longitude = Math.Round(76 + rnd.NextDouble(), 5);

            Geolocation generator = new Geolocation(latitude.ToString(), longitude.ToString());
            string      payload   = generator.ToString();

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.Q);
            QRCode          qrCode      = new QRCode(qrCodeData);
            Bitmap          qrCodeImage = qrCode.GetGraphic(20);

            string pathToSave = ConfigurationManager.AppSettings["qrCodesOutputDirectory"];
            string fileName   = $"{"shippingInfo_" + purchase.PurchaseGuid.ToString()}.png";

            path = Path.Combine(pathToSave, fileName);
            qrCodeImage.Save(path);

            using (MemoryStream ms = new MemoryStream())
            {
                qrCodeImage.Save(ms, ImageFormat.Png);
                tmp = ms.ToArray();
                return(tmp);
            }
        }
Ejemplo n.º 3
0
        public override string ToString()
        {
            var optionValues = new List <string>
            {
                Geolocation.ToString(),
                Midi.ToString(),
                Notifications.ToString(),
                Push.ToString(),
                SyncXhr.ToString(),
                Microphone.ToString(),
                Camera.ToString(),
                Magnetometer.ToString(),
                Gyroscope.ToString(),
                Speaker.ToString(),
                Vibrate.ToString(),
                Fullscreen.ToString(),
                Payment.ToString(),
                Accelerometer.ToString(),
                AmbientLightSensor.ToString(),
                Autoplay.ToString(),
                EncryptedMedia.ToString(),
                PictureInPicture.ToString(),
                Usb.ToString(),
                Vr.ToString()
            };

            optionValues.AddRange(Other.Select(o =>
            {
                o.Value.FeatureName = o.Key;
                return(o.Value.ToString());
            }));

            return(string.Join("; ", optionValues.Where(s => s.Length > 0)));
        }
Ejemplo n.º 4
0
        private void GenerateGeoLocationQr(string lat, string longi)
        {
            try
            {
                Geolocation generator = new Geolocation(lat, longi);
                string      payload   = generator.ToString();

                QRCodeGenerator qrGenerator    = new QRCodeGenerator();
                QRCodeData      qrCodeData     = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.Q);
                QRCode          qrCode         = new QRCode(qrCodeData);
                var             qrCodeAsBitmap = qrCode.GetGraphic(20);

                if (save_image_geo)
                {
                    using (FolderBrowserDialog f = new FolderBrowserDialog())
                    {
                        if (f.ShowDialog() == DialogResult.OK)
                        {
                            qrCodeAsBitmap.Save(Path.Combine(f.SelectedPath, "qr-code-geolocation.png"));
                        }
                    }
                }
                GeoPic.Image = qrCodeAsBitmap;

                qrGenerator.Dispose();
                qrCode.Dispose();
                qrCodeData.Dispose();
            }
            catch (Exception)
            {
                throw;
            }
        }
Ejemplo n.º 5
0
        /// <summary>
        /// 地理位置
        /// </summary>
        protected void QR_Geolocation()
        {
            //Geolocation generator = new Geolocation("51.26118", "6.6717");
            Geolocation generator = new Geolocation("30.6717", "121.26118");
            string      payload   = generator.ToString();

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(payload, QRCodeGenerator.ECCLevel.Q);
            QRCode          qrCode      = new QRCode(qrCodeData);

            QR            = qrCode.GetGraphic(4);
            QR_show.Image = QR.GetThumbnailImage(300, 300, null, IntPtr.Zero);
        }
Ejemplo n.º 6
0
        private void pictureBox1_Click(object sender, EventArgs e)
        {
            Geolocation geo = Geolocation.Get(pictureBox1.SelectedPoint);

            if (geo != null)
            {
                label1.Text = geo.ToString();
            }
            else
            {
                label1.Text = " - ";
            }
            Clipboard.SetText(pictureBox1.SelectedPoint.ToString());
        }
        public void InsertQrCodeGeolocation(int userId, string latitude, string longtitude)
        {
            Geolocation generator = new Geolocation(latitude, longtitude);
            string      location  = generator.ToString();

            QRCodeGenerator qrGenerator = new QRCodeGenerator();
            QRCodeData      qrCodeData  = qrGenerator.CreateQrCode(location, QRCodeGenerator.ECCLevel.Q);
            QRCode          qrCode      = new QRCode(qrCodeData);
            var             qrCodeImage = qrCode.GetGraphic(20);

            using (MemoryStream ms = new MemoryStream())
            {
                qrCodeImage.Save(ms, ImageFormat.Png);
                qrCodeGeoRepository.Insert(new QrCodeGeoEntity()
                {
                    UserId     = userId,
                    QrCodeType = QrCodeType.LocationEncodedQrCode,
                    Content    = ms.ToArray()
                });
            }
        }
Ejemplo n.º 8
0
        public static void ValidateGeopoint(Geolocation point)
        {
            string error = "";


            var latitude  = point.Latitude;
            var longitude = point.Longitude;

            if (latitude < -90 || latitude > 90)
            {
                error = "latitude must be within the range [-90, 90]";
            }
            else if (longitude < -180 || longitude > 180)
            {
                error = "longitude must be within the range [-180, 180]";
            }

            if (!string.IsNullOrWhiteSpace(error))
            {
                throw new ArgumentException("Invalid GeoFire location \'" + point.ToString() + "\': " + error);
            }
        }