public virtual QRCodeSymbol getQRCodeSymbolWithAdjustedGrid(Point adjust)
 {
     if (bitmap == null || samplingGrid == null)
     {
         throw new SystemException("This method must be called after QRCodeImageReader.getQRCodeSymbol() called");
     }
     samplingGrid.adjust(adjust);
     canvas.println("Sampling grid adjusted d(" + adjust.X + "," + adjust.Y + ")");
     bool[][] array = null;
     try
     {
         array = getQRCodeMatrix(bitmap, samplingGrid);
     }
     catch (IndexOutOfRangeException)
     {
         throw new SymbolNotFoundException("Sampling grid exceeded image boundary");
     }
     return(new QRCodeSymbol(array));
 }