⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 b.java

📁 二维QR条码项目的J2ME源代码。软件包括1.核心QR码编/解库
💻 JAVA
📖 第 1 页 / 共 2 页
字号:
// Decompiled by DJ v3.9.9.91 Copyright 2005 Atanas Neshkov  Date: 12/6/2006 9:56:42 AM
// Home Page : http://members.fortunecity.com/neshkov/dj.html  - Check often for new version!
// Decompiler options: packimports(3) 

package jp.sourceforge.qrcode.reader;

import jp.sourceforge.qrcode.data.a;
import jp.sourceforge.qrcode.exception.c;
import jp.sourceforge.qrcode.exception.d;

public final class b
{

    public b()
    {
    }

    private static boolean[][] a(boolean aflag[][], int i)
    {
        boolean aflag1[][] = new boolean[aflag.length][aflag[0].length];
        for(int k = 1; k < aflag[0].length - 1; k++)
        {
            for(int l = 1; l < aflag.length - 1; l++)
            {
                int j = 0;
                for(int i1 = -1; i1 < 2; i1++)
                {
                    for(int j1 = -1; j1 < 2; j1++)
                        if(aflag[l + j1][k + i1])
                            j++;

                }

                if(j > i)
                    aflag1[l][k] = true;
            }

        }

        return aflag1;
    }

    public final a a(boolean aflag[][])
        throws jp.sourceforge.qrcode.exception.b, c, jp.sourceforge.qrcode.exception.a, d
    {
        int i = aflag.length >= aflag[0].length ? aflag.length : aflag[0].length;
        a = 23 - jp.sourceforge.qrcode.util.a.a(i / 256);
        Object obj = null;
        jp.sourceforge.qrcode.reader.pattern.b b1 = jp.sourceforge.qrcode.reader.pattern.b.a(aflag);
          goto _L1
        JVM INSTR pop ;
        aflag = a(aflag, 5);
        b1 = jp.sourceforge.qrcode.reader.pattern.b.a(aflag);
          goto _L1
        JVM INSTR dup ;
        Object obj1;
        obj1;
        throw ;
        JVM INSTR dup ;
        obj1;
        throw ;
        JVM INSTR dup ;
        c c1;
        c1;
        throw ;
_L1:
        int j;
        jp.sourceforge.qrcode.reader.pattern.a a1;
        j = b1.c();
        a1 = null;
        if(j <= 1)
            break MISSING_BLOCK_LABEL_181;
        a1 = jp.sourceforge.qrcode.reader.pattern.a.a(aflag, b1);
          goto _L2
        JVM INSTR dup ;
        Object obj2;
        obj2;
        throw ;
        JVM INSTR dup ;
        obj2;
        throw ;
_L2:
        int k = a1.a().length;
        for(int l = 0; l < k; l++)
        {
            String s = "";
            for(int i1 = 0; i1 < k; i1++)
                s = s + a1.a()[i1][l].toString();

        }

        jp.sourceforge.qrcode.geom.c ac[][][][];
        if(j == 1)
            ac = a(b1);
        else
        if(j >= 2 && j <= 6)
            ac = a(b1, a1);
        else
        if(j >= 7 && j <= 13)
            ac = b(b1, a1);
        else
            throw new d();
        boolean aflag1[][] = a(aflag, ac);
        return new a(aflag1);
    }

    private jp.sourceforge.qrcode.geom.c[][][][] a(jp.sourceforge.qrcode.reader.pattern.b b1)
    {
        int i;
        int j = (i = b1.e()) / 1;
        jp.sourceforge.qrcode.geom.a aa[] = b1.a();
        jp.sourceforge.qrcode.geom.c ac[][][][] = new jp.sourceforge.qrcode.geom.c[1][1][2][j];
        int ai[];
        (ai = new int[2])[0] = a(aa[0], aa[1], 14);
        ai[1] = a(aa[0], aa[2], 14);
        jp.sourceforge.qrcode.geom.c c1 = new jp.sourceforge.qrcode.geom.c(b1.a(0), b1.a(2));
        int k = b1.b()[0];
        int l = b1.b()[1];
        jp.sourceforge.qrcode.geom.b b2;
        (b2 = new jp.sourceforge.qrcode.geom.b(k, l, ai[0])).d = c1.a();
        c1.a = b2.a(-3, -3).a;
        c1.b = b2.a(-3, -3).b;
        b2.c = ai[1];
        b2.d = c1.b();
        c1.c = b2.a(-3, 3).a;
        c1.d = b2.a(-3, 3).b;
        jp.sourceforge.qrcode.geom.c c2 = new jp.sourceforge.qrcode.geom.c(b1.a(0), b1.a(1));
        b2.c = ai[1];
        b2.d = c2.a();
        c2.a = b2.a(-3, -3).a;
        c2.b = b2.a(-3, -3).b;
        b2.c = ai[1];
        b2.d = c2.b();
        c2.c = b2.a(3, -3).a;
        c2.d = b2.a(3, -3).b;
        c1.a++;
        c1.b++;
        c1.c++;
        c1.d++;
        c2.a++;
        c2.b++;
        c2.c++;
        c2.d++;
        for(int i1 = 0; i1 < j; i1++)
        {
            jp.sourceforge.qrcode.geom.c c3 = new jp.sourceforge.qrcode.geom.c(c1.a(), c1.b());
            b2.d = c3.a();
            b2.c = ai[0];
            c3.a = b2.a(i1, 0).a;
            c3.b = b2.a(i1, 0).b;
            b2.d = c3.b();
            b2.c = ai[0];
            c3.c = b2.a(i1, 0).a;
            c3.d = b2.a(i1, 0).b;
            jp.sourceforge.qrcode.geom.c c4 = new jp.sourceforge.qrcode.geom.c(c2.a(), c2.b());
            b2.d = c4.a();
            b2.c = ai[1];
            c4.a = b2.a(0, i1).a;
            c4.b = b2.a(0, i1).b;
            b2.d = c4.b();
            b2.c = ai[1];
            c4.c = b2.a(0, i1).a;
            c4.d = b2.a(0, i1).b;
            ac[0][0][0][i1] = c3;
            ac[0][0][1][i1] = c4;
        }

        return ac;
    }

    private jp.sourceforge.qrcode.geom.c[][][][] a(jp.sourceforge.qrcode.reader.pattern.b b1, jp.sourceforge.qrcode.reader.pattern.a a1)
    {
        jp.sourceforge.qrcode.geom.a aa[][];
        (aa = a1.a())[0][0] = b1.a(0);
        aa[1][0] = b1.a(1);
        aa[0][1] = b1.a(2);
        int i = b1.e();
        jp.sourceforge.qrcode.geom.c ac[][][][] = new jp.sourceforge.qrcode.geom.c[1][1][2][i];
        int j = a1.b();
        int k = b1.b()[0];
        int l = b1.b()[1];
        jp.sourceforge.qrcode.geom.b b2 = new jp.sourceforge.qrcode.geom.b(k, l, b1.d());
        int ai[];
        (ai = new int[4])[0] = a(aa[0][0], aa[1][0], j + 6);
        ai[1] = a(aa[0][0], aa[0][1], j + 6);
        b2.c = ai[0];
        b2.d = aa[0][1];
        ai[2] = a(b2.a(0, -3), aa[1][1], j + 3);
        b2.c = ai[1];
        b2.d = aa[1][0];
        ai[3] = a(b2.a(-3, 0), aa[1][1], j + 3);
        jp.sourceforge.qrcode.geom.c c1 = new jp.sourceforge.qrcode.geom.c();
        jp.sourceforge.qrcode.geom.c c2 = new jp.sourceforge.qrcode.geom.c();
        b2.d = aa[0][0];
        ai[0] = a(aa[0][0], aa[1][0], j + 6);
        ai[1] = a(aa[0][0], aa[0][1], j + 6);
        b2.c = ai[0];
        b2.d = aa[0][1];
        ai[2] = a(b2.a(0, -3), aa[1][1], j + 3);
        b2.c = ai[1];
        b2.d = aa[1][0];
        ai[3] = a(b2.a(-3, 0), aa[1][1], j + 3);
        b2.d = aa[0][0];
        b2.c = ai[0];
        c1.a = b2.a(-3, -3).a;
        c1.b = b2.a(-3, -3).b;
        b2.c = ai[1];
        c2.a = b2.a(-3, -3).a;
        c2.b = b2.a(-3, -3).b;
        b2.d = aa[0][1];
        b2.c = ai[2];
        c1.c = b2.a(-3, 3).a;
        c1.d = b2.a(-3, 3).b;
        b2.d = aa[1][0];
        b2.c = ai[3];
        c2.c = b2.a(3, -3).a;
        c2.d = b2.a(3, -3).b;
        c1.a++;
        c1.b++;
        c1.c++;
        c1.d++;
        c2.a++;
        c2.b++;
        c2.c++;
        c2.d++;
        for(int i1 = 0; i1 < i; i1++)
        {
            jp.sourceforge.qrcode.geom.c c3 = new jp.sourceforge.qrcode.geom.c(c1.a(), c1.b());
            b2.d = c3.a();

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -