Не печатать с устройства - PullRequest
0 голосов
/ 25 сентября 2019

Я печатаю пользовательский отчет с устройства pax, но он не работает. Сначала я загружаю URL-адрес пользовательского отчета в веб-представление и нажимаю кнопку печати. ​​Печать не приходит с устройства pax. Это первый раз, когда принтер печатается с устройства, но не второй раз.сначала проверьте мой приведенный ниже код. Я загружаю всю библиотеку

>  if (Appconstant.sharedPreferences == null) {
            Appconstant.sharedPreferences = getApplicationContext().getSharedPreferences(
                    "Pref", 0);
        }
        String loadLib = Appconstant.sharedPreferences.getString("loadLib", "");
    Log.e(TAG,"loadLib==>"+loadLib);
        Toast.makeText(PrintActivity.this, "load lib==>"+loadLib, Toast.LENGTH_SHORT).show();
        if(loadLib.isEmpty()){
            System.loadLibrary("F_DEVICE_LIB_Android");
            System.loadLibrary("F_PUBLIC_LIB_Android");
            System.loadLibrary("JniEntry_V1.00.00_20170616");
            System.loadLibrary("JniMC_V1.00.00_20170616");
            System.loadLibrary("JniWave_V1.00.00_20170616");
            System.loadLibrary("F_ENTRY_LIB_Android");
            System.loadLibrary("F_MC_LIB_Android");
            System.loadLibrary("F_WAVE_LIB_Android");
            System.loadLibrary("JniEMV_V1.00.00_20170616");

        }

после загрузки URL-адреса настраиваемого отчета в Интернете. Просмотр и нажатие кнопки «Печать». После нажатия кнопки «Печать» я вызываю метод Print1

    private void print1(WebView receipt_webview) {
         Bitmap bitmap = getWebViewBitmap(receipt_webview);
         IDAL dal = DALProxyClient.getInstance().getDal(PrintActivity.this);
        dal.getPrinter().init();
        dal.getPrinter().printBitmapWithMonoThreshold(bitmap, 230);
        dal.getPrinter().step(200);
        dal.getPrinter().start();        
             }
* 1006.* Метод getWebViewBitMap, пожалуйста, проверьте ниже код
    private static Bitmap getWebViewBitmap(View view) {

    Log.e(TAG,"PrintActivity2"+view);
    Bitmap bitmap = null;

    // width measure spec
    int widthSpec = View.MeasureSpec.makeMeasureSpec(view.getMeasuredWidth(), View.MeasureSpec.AT_MOST);
    // height measure spec
    int heightSpec = View.MeasureSpec.makeMeasureSpec(view.getMeasuredHeight(), View.MeasureSpec.AT_MOST);

    // measure the view
    view.measure(widthSpec, heightSpec);

    // set the layout sizes
    int left = view.getLeft();
    int top = view.getTop();
    int width = view.getMeasuredWidth();
    int height = view.getMeasuredHeight();
    int scrollX = view.getScrollX();
    int scrollY = view.getScrollY();

    view.layout(left, top, width + left, height + top);

    // create the bitmap
    bitmap = Bitmap.createBitmap(view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);

    // create a canvas used to get the view's image and draw it on the
    // bitmap

    Canvas c = new Canvas(bitmap);
    // position the image inside the canvas
    c.translate(-view.getScrollX(), -view.getScrollY());
    // get the canvas
    view.draw(c);
    return bitmap;
}

этот код в первый раз работает правильно, но не во второй раз. пожалуйста, проверьте код

...