2015-01-23 1 views
0

captureBase64를 사용하여 스크린 샷을 찍어 내 웹 사이트에 표시하고 있습니다. Windows와 Linux에서 실행되는 두 가지 테스트 환경을 Wampserver와 다른 Apache 2.4.6 + PHP 5.5에서 모두 사용하여 동일한 casperjs 코드를 실행합니다.CaptureBase64를 통해 스크린 샷을 찍은 후 CasperJS가 문자를 올바르게 표시하지 않습니다.

내가 리눅스를 사용하여 무슨 일이 있었는지 모르지만 문자열/문자가 제대로 몇 번 나타나지 않습니다 내 코드 아래에 사각형 문자입니다 쇼 그냥 뭐 :

1. CasperJS 

    this.click(x(btDetalhes)); 
    this.wait(3000); // Descomentar se der ERROR 
     casper.waitForResource("Dúvidas", function detalhesPedido(screenShot) { 
      return screenShot; 
       }, function onReceived() { 
        this.log('Wait...');    
        myScreenShot = this.captureBase64('png', '#ctl00_Conteudo_rptListaCompras_ctl00_pnlPrincipal', {format: 'png', quality: 100}); 
       }); 

    // Logout & Exit 
    casper.thenOpen(url_logout, function logout() { 
     // Check if exists screenshot 
      if (myScreenShot !== "") { 
       this.echo("data:image/png;base64," + myScreenSHot).exit(); 
      } else { 
       this.echo('Sorry!')exit('1601'); 
      } 
    }).run(); 

내가 casperjs을 사용하고 있습니다 -1.1.0-beta3 및 phantomjs-1.9.8을 CentOS 7과 함께 사용합니다.

어떤 도움을 주셔서 감사합니다.

답변

1

나는 분명히 명확한 답변을 발견했습니다!

캐스퍼 스크립트로 PHP 호출을하고 스크립트가 JSON을 PHP로 반환 한 후에 수행합니다.

php-gd 설치 후 모든 문자열/문자가 올바르게 나타납니다.

감사합니다.