通过 captureBase64 截图后,CasperJS 无法正确显示字符

CasperJS doesn't show the characters correctly after screenshot via captureBase64

我正在使用 captureBase64 截取屏幕截图并将其显示在我的网站上。我在 Windows 和 Linux 上有两个测试环境 运行,第一个我使用 Wampserver,另一个 Apache 2.4.6 + php 5.5 都执行相同的 casperjs 代码。

当我使用 Linux 时,我不知道发生了什么,但是 strings/characters 有时显示不正确,它显示的是我的代码下方的方块字符:

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();

我在 CentOS 7 上使用 casperjs-1.1.0-beta3 和 phantomjs-1.9.8。

感谢您的帮助。

我找到答案了,明明很清楚!

我对 casper 脚本进行了 php 回调,在脚本完成后 return JSON 到 php。

安装 php-gd 后,所有 strings/characters 都正确显示。

谢谢