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

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

本文关键字:字符 显示 captureBase64 CasperJS      更新时间:2023-09-26

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

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

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。

感谢您的任何帮助。

我找到了答案,显然是如此清楚!

我对 casper 脚本进行 php 调用,并在脚本完成后将 JSON 返回给 php。

安装 php-gd 后,所有字符串/字符都正确显示。

谢谢