se a imagem ficou embassada é com a camera

Em 27 de agosto de 2013 16:45, Robinho de Morais
<[email protected]>escreveu:

> consegui pegar um exemplo na internet com o zxing, instalei no meu S2 Lite
> e ele abre mas a imagem fica embaçada...o engraçado que do proprio
> barcode.apk da zxing funcionou legal....
>
> esse é o código..:
>
> <?xml version="1.0" encoding="utf-8"?>
> <s:View xmlns:fx="http://ns.adobe.com/mxml/2009";
>  xmlns:s="library://ns.adobe.com/flex/spark" title="Scanner">
>  <fx:Script>
>  <![CDATA[
> import mx.core.BitmapAsset;
>  import com.google.zxing.common.BitMatrix;
> import com.google.zxing.BarcodeFormat;
>  import com.google.zxing.BinaryBitmap;
> import com.google.zxing.BufferedImageLuminanceSource;
>  import com.google.zxing.DecodeHintType;
> import com.google.zxing.MultiFormatReader;
>  import com.google.zxing.Result;
> import com.google.zxing.client.result.ParsedResult;
>  import com.google.zxing.client.result.ResultParser;
> import com.google.zxing.common.GlobalHistogramBinarizer;
>  import com.google.zxing.common.flexdatatypes.HashTable;
> //import com.google.zxing.oned.EAN13Reader;
>  //import com.google.zxing.qrcode.QRCodeReader;
>  import flashx.textLayout.tlf_internal;
>  protected var camera:Camera;
> private var videoDisplay:Video = new Video(300, 300);
>  private var myReader:MultiFormatReader;
> private var bmd:BitmapData;
>  private var cameraStarted:Boolean = false;
>   protected function start_camera(event:MouseEvent):void
>  {
> myReader = new MultiFormatReader();
>  if(!cameraStarted){
>  if(Camera.isSupported) {
> camera = Camera.getCamera();
>  camera.setMode(320, 240, 15);
>  videoDisplay.x = 295;
> sv.addChild(videoDisplay);
>  videoDisplay.attachCamera(camera);
>  videoDisplay.rotation = 90;
>  btn.label = "Scan Now";
> lbl.text = "";
>  cameraStarted = true;
> } else {
>  lbl.text = "No camera found";
> }
>  } else {
> decodeSnapshot();
>  }
> }
>  public function decodeSnapshot():void {
>  lbl.text = "Checking...";
> bmd = new BitmapData(300, 300);
>  bmd.draw(videoDisplay, null, null, null, null, true);
> videoDisplay.cacheAsBitmap = true;
>  videoDisplay.cacheAsBitmapMatrix = new Matrix;
> decodeBitmapData(bmd, 300, 300);
>  bmd.dispose();
> bmd=null;
>  System.gc();
> }
>  public function decodeBitmapData(bmpd:BitmapData, width:int,
> height:int):void {
>  var lsource:BufferedImageLuminanceSource = new
> BufferedImageLuminanceSource(bmpd);
>  var bitmap:BinaryBitmap = new BinaryBitmap(new
> GlobalHistogramBinarizer(lsource));
>  var ht:HashTable = null;
> ht = this.getAllHints();
>  var res:Result = null;
>  try {
> res = myReader.decode(bitmap, ht);
>  }
>  catch (event:Error) {
>  }
>  if (res == null) {
> videoDisplay.clear();
>  lbl.text = "Nothing decoded";
> } else {
>  var parsedResult:ParsedResult = ResultParser.parseResult(res);
> lbl.text = parsedResult.getDisplayResult();
>  sv.removeChild(videoDisplay);
> cameraStarted = false;
>  btn.label = "Start Camera";
> }
>  }
>  private function getAllHints():HashTable {
>  var ht:HashTable = new HashTable;
> //ht.Add(DecodeHintType.POSSIBLE_FORMATS, BarcodeFormat.EAN_13);
>  return ht;
> }
>  ]]>
> </fx:Script>
>  <fx:Declarations>
> <!-- Place non-visual elements (e.g., services, value objects) here -->
>  </fx:Declarations>
> <s:VGroup height="100%" width="100%" top="0" right="0" bottom="0" left="0"
> horizontalAlign="center">
>  <s:VGroup width="100%" height="300" horizontalAlign="center" id="vg">
>  <s:SpriteVisualElement id="sv" width="300" height="200" />
>  </s:VGroup>
> <s:VGroup horizontalAlign="center" >
>  <s:Button id="btn" width="220" height="36" label="Start Camera"
>    click="start_camera(event)"/>
> <s:Label id="lbl" x="106" y="291" text=""/>
>  </s:VGroup>
> </s:VGroup>
> </s:View>
>
> Qualquer dúvida estou a disposição.
>
> *Robinho*
> *Analista/Programador de Sistemas*
> *"A fé em Deus nos faz crer no incrível, ver o invisível e realizar o
> impossível."*
>
>
> Em 27 de agosto de 2013 12:12, [email protected] <
> [email protected]> escreveu:
>
> sim, procura pela biblioteca zxing, tem codigo em AS3 la que da pra usar
>> tranquilo, e exemplos tb...
>>
>>
>> Em 27 de agosto de 2013 12:09, Robinho de Morais <
>> [email protected]> escreveu:
>>
>> Boa tarde Pessoal,
>>>
>>> Tenho como fazer uma leitura de código de barra pelo flexMobile ?
>>>
>>> isso tanto para Android quanto para iOS ?
>>>
>>> alguém tem exemplos ?
>>>
>>> --
>>> --
>>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>>> Para enviar uma mensagem, envie um e-mail para [email protected]
>>> Para sair da lista, envie um email em branco para
>>> [email protected]
>>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>>> ---
>>> Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev"
>>> dos Grupos do Google.
>>> Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
>>> envie um e-mail para [email protected].
>>> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>>>
>>
>>  --
>> --
>> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
>> Para enviar uma mensagem, envie um e-mail para [email protected]
>> Para sair da lista, envie um email em branco para
>> [email protected]
>> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
>> ---
>> Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev"
>> dos Grupos do Google.
>> Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
>> envie um e-mail para [email protected].
>> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>>
>
>  --
> --
> Você recebeu esta mensagem porque está inscrito na lista "flexdev"
> Para enviar uma mensagem, envie um e-mail para [email protected]
> Para sair da lista, envie um email em branco para
> [email protected]
> Mais opções estão disponíveis em http://groups.google.com/group/flexdev
> ---
> Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev"
> dos Grupos do Google.
> Para cancelar a inscrição neste grupo e parar de receber seus e-mails,
> envie um e-mail para [email protected].
> Para obter mais opções, acesse https://groups.google.com/groups/opt_out.
>

-- 
-- 
Você recebeu esta mensagem porque está inscrito na lista "flexdev"
Para enviar uma mensagem, envie um e-mail para [email protected]
Para sair da lista, envie um email em branco para 
[email protected]
Mais opções estão disponíveis em http://groups.google.com/group/flexdev
--- 
Você está recebendo esta mensagem porque se inscreveu no grupo "flexdev" dos 
Grupos do Google.
Para cancelar a inscrição neste grupo e parar de receber seus e-mails, envie um 
e-mail para [email protected].
Para obter mais opções, acesse https://groups.google.com/groups/opt_out.

Responder a