Android加载Html与自定义font-face无法影响

时间:2015-05-13 06:07:54

标签: android html5 webview

在这个简单的HTML中,我可以看到正确的页面,自定义的网页字体为@ font-face,但在我的应用程序中我有Webview,这个字体不会影响到文本。页面显示默认电话字体

    QString aeskey = "7794b12op901252bfcea66d6f0521212";
    QString _iv;
void Cipher::GenerateIV()
{
    AutoSeededRandomPool rnd;
    byte iv3[AES::BLOCKSIZE];
    rnd.GenerateBlock(iv3, AES::BLOCKSIZE);
    QByteArray out((char*)iv3, AES::BLOCKSIZE);
    _iv = out.toBase64();
}
QString Cipher::AESencrypt(QString Qstr_in)
{
    string str_in = Qstr_in.toStdString();
    string key = aeskey.toStdString();
    GenerateIV();
    string iv = _iv.toStdString();
    string str_out;
    CBC_Mode<AES>::Encryption encryption;
    encryption.SetKeyWithIV((byte*)key.c_str(), key.length(), (byte*)iv.c_str());
    StringSource encryptor(str_in, true,
                 new StreamTransformationFilter(encryption,
                 new Base64Encoder(
                 new StringSink(str_out)
//                ,StreamTransformationFilter::PKCS_PADDING
                ,StreamTransformationFilter::ZEROS_PADDING
           )
        )
    );

    return QString::fromStdString(str_out);
}
QString Cipher::AESdecrypt(QString Qstr_in)
{
    string str_in = Qstr_in.toStdString();
    string key = aeskey.toStdString();
    string iv = _iv.toStdString();
    string str_out;
    CBC_Mode<AES>::Decryption decryption;
    decryption.SetKeyWithIV((byte*)key.c_str(), key.length(), (byte*)iv.c_str());
    StringSource decryptor(str_in, true,
                 new Base64Decoder(
                 new StreamTransformationFilter(decryption,
                 new StringSink(str_out)
//                ,StreamTransformationFilter::PKCS_PADDING
                ,StreamTransformationFilter::DEFAULT_PADDING
            )
        )
    );
    return QString::fromStdString(str_out);
}

我的示例代码:

    <html>
        <head>
            <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
            <title>Shams test</title>
            <link href='http://www.fontonline.ir/css/Shams.css' rel='stylesheet' type='text/css'>
            <style>
                 .myclass{
                 font-family:Shams,'Shams';
                 font-size:12px;
                }
            </style>
        </head>

        <body>
            <div class="myclass">This is Test</div>
        </body>
    </html>

1 个答案:

答案 0 :(得分:0)

我有同样的问题。尝试在本地存储上下载和保存字体。然后你需要修改你的HTML代码。希望这会帮助你。我在css中遇到了与字体相关链接的问题,但是当我改为绝对链接时,一切正常。我还从assets文件夹中加载了html。