C# 使用RotateFlip旋转位图

C# 使用RotateFlip旋转位图,c#,pdf,bitmap,qr-code,image-rotation,C#,Pdf,Bitmap,Qr Code,Image Rotation,我无法旋转已包含QR码的扫描文档。 我正在检查二维码,但当二维码颠倒时,我翻页并再次尝试读取二维码时遇到问题。我得到这个错误信息: 引发了类型为“com.google.zxing.readerexception”的异常 using (var fullImg = new Bitmap(workGif)) { var halfW = fullImg.Width/2; var halfH =

我无法旋转已包含QR码的扫描文档。 我正在检查二维码,但当二维码颠倒时,我翻页并再次尝试读取二维码时遇到问题。我得到这个错误信息:

引发了类型为“com.google.zxing.readerexception”的异常

using (var fullImg = new Bitmap(workGif))
                {
                    var halfW = fullImg.Width/2;
                    var halfH = fullImg.Height / 2;
                    var bandImg = fullImg.Clone(new System.Drawing.Rectangle(0, 0, halfW, halfH), fullImg.PixelFormat);


                    if (Process(bandImg) == null)
                    {
                        page.Rotate = (page.Rotate + 180) % 360;
                    }
                    string QRinfo = Process(bandImg);
                    MessageBox.Show(QRinfo);
                    string[] qcode = QRinfo.Split('/');
                    string gid = qcode[qcode.Count() - 1];
                    Guid pgGuid = new Guid(gid);

                    MessageBox.Show(QRinfo);

                    var ar = dc.Assessments.FirstOrDefault(c => c.ID == pgGuid);
                    if (ar != null)
                    {
                        var p = inputDocument.Pages[pg];
                        string opdName = FILESTORELOCATION + pgGuid.ToString() + ".pdf";
                        PdfDocument opd = new PdfDocument(opdName);
                        opd.Pages.Add(p);
                        opd.Close();

                        ar.StoragePath = opdName;
                        ar.LastUploadedDT = DateTime.UtcNow;
                        ar.UploadedByUserID = uploadingUser;
                        dc.SubmitChanges();
                    }

                }
这是我解码qr的过程:

 public string Process(Bitmap bitmap)
    {
        var reader = new com.google.zxing.qrcode.QRCodeReader();

        try
        {
            LuminanceSource source = new RGBLuminanceSource(bitmap, bitmap.Width, bitmap.Height);
            var binarizer = new HybridBinarizer(source);
            var binBitmap = new BinaryBitmap(binarizer);
            return reader.decode(binBitmap).Text;
        }
        catch (Exception e)
        {
            return e.Message;
        }
    }

看看@Blachshma是否感谢你的链接-我有点想了解更多细节,但在他们之前,我正在尝试不同的选择。