乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      不懂記,還是掃描二維碼條形碼——day6

       昵稱15103532 2013-12-24

      http://blog.csdn.net/hello2me/article/details/8687849

      在用到條碼掃描過程中.默認(rèn)的情況就不說了.時(shí)間的開發(fā)中不管是掃描還是任何一個(gè)功能模塊.都不可能全部是默認(rèn)的.尤其是android開發(fā).各種自定義.

      我在做Yibin藥皮你檢測的時(shí)候因?yàn)橛玫搅藅abhost.如果是在手機(jī)上的橫屏顯示的話.屏幕太小.所以只能豎屏顯示.但是豎屏顯示.相機(jī)撲捉到的的旋轉(zhuǎn)90的內(nèi)容.要想讓屏幕豎屏顯示.因?yàn)槲业膖abhost是豎屏的.所以掃描的頁面可定也是豎屏的.在主配置文件中的activity標(biāo)簽中添加 android:screenOrientation="portrait" 豎屏顯示.

      在CameraManager類中的openDriver方法的最后添加設(shè)置camera.setDisplayOrientation(90); 讓相機(jī)的畫面旋轉(zhuǎn)90,跟著手機(jī)的屏幕正確的顯示,這個(gè)做了之后,條碼是掃不出來的.因?yàn)橹皇前严鄼C(jī)的撲捉的畫面旋轉(zhuǎn)了.真正解析的部分的畫面還沒有真正的旋轉(zhuǎn).所以還要改一個(gè)地方,在DecodeHandler類中decode方法中將

      PlanarYUVLuminanceSource source = CameraManager.get().buildLuminanceSource(data, width, height);

       換成

      1. <span style="font-family:KaiTi_GB2312;font-size:18px;"byte[] rotatedData = new byte[data.length];  
      2.          for (int y = 0; y < height; y++) {  
      3.          for (int x = 0; x < width; x++)  
      4.          rotatedData[x * height + height - y - 1] = data[x + y * width];  
      5.          }  
      6. PlanarYUVLuminanceSource source = CameraManager.get().buildLuminanceSource(rotatedData, width, height);</span>  


      換了這個(gè)之后短的條碼就能掃描了.本來我以為橫屏掃描在這個(gè)項(xiàng)目中就可以結(jié)束了.誰知道老板拿了一老長的條碼來.一試掃這么反應(yīng).想了半天.有想過改程序外框架為左側(cè)菜單.這樣就能時(shí)候zxing的默認(rèn)橫拼掃描了.左側(cè)菜單沒有做過.估計(jì)一時(shí)半會也拿不下.就想著吧zxing掃描的框變長一點(diǎn),豎著看的話.應(yīng)該是高一點(diǎn).就是豎著拿手機(jī).顯示的是橫著的畫面.這樣在平板上也好用點(diǎn).后倆界面改好了.也能掃描了.可移植到項(xiàng)目上就又不行了,然后就奇怪的發(fā)現(xiàn)掃不出的原因了 .是因?yàn)榧t線沒有對應(yīng)到真正掃描解碼的位置.我把圖片對應(yīng)到掃描區(qū)域的上邊.掃出來了.我暈.然后我就該掃描區(qū)域的大小.調(diào)整紅線的位置.調(diào)好了.也能掃描了.就是掃描框比之前窄了.看著不是很順眼.后來在一個(gè)博客中看到了下面的內(nèi)容

       

      1. <span style="font-family:KaiTi_GB2312;font-size:18px;">點(diǎn)開包c(diǎn)om.google.zxing.client.android.camera 下 CameraManager 中 getFramingRectInPreview() 方法中 修改  
      2.   
      3. //      rect.left = rect.left * cameraResolution.x / screenResolution.x;  
      4. //      rect.right = rect.right * cameraResolution.x / screenResolution.x;  
      5. //      rect.top = rect.top * cameraResolution.y / screenResolution.y;  
      6. //      rect.bottom = rect.bottom * cameraResolution.y / screenResolution.y;  // 修改前這四行 注釋  
      7.       /** 
      8.        * 修改后 www. 
      9.        */  
      10.       rect.left = rect.left * cameraResolution.y / screenResolution.x;  
      11.       rect.right = rect.right * cameraResolution.y / screenResolution.x;  
      12.       rect.top = rect.top * cameraResolution.x / screenResolution.y;  
      13.       rect.bottom = rect.bottom * cameraResolution.x / screenResolution.y;  
      14.   
      15. </span>  


      我之前調(diào)正了.也能掃描了.不過框小不太好看.我就試了試這個(gè).這個(gè)挺好的.不用改變ViewfinderView類里的參數(shù)了.這個(gè)類里面畫圖的參數(shù)好難改呀.試了上面的方法.掃描框大小正常了.也能掃描了.感謝這個(gè)博客的作者:http://www./kf/201212/173338.html

        本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
        轉(zhuǎn)藏 分享 獻(xiàn)花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多