2016-08-02 15 views
0

Ich benutze die „Objekt“ Methode einen „test.pdf“ zu HTML einbetten, und es funktioniert perfekt:Warum html embeded pdf kann chinese-character Dateiname nicht unterstützen?

<object width="600" height="600" type="application/pdf" data="./test.pdf?#zoom=85&scrollbar=0&toolbar=0&navpanes=0" id="pdf_content"> </object>

aber sobald ich die Dateinamenvon Englisch auf Chinesisch ändern (" test.pdf "->" 测试 .pdf "), das html kann das PDF nicht anzeigen, die Seite ist leer und leer. Warum ist das?

<object width="600" height="600" type="application/pdf" data="./测试.pdf?#zoom=85&scrollbar=0&toolbar=0&navpanes=0" id="pdf_content"> </object>

Ich habe viele Möglichkeiten versucht, das Problem (zum Beispiel Änderung charset von „utf-8“ auf „gb2312“), aber keiner von ihnen wirklich beheben, es zu lösen.

Antwort

0

Ich glaube, das liegt daran, dass Sie die chinesischen Schriftzeichen gemäß RFC 3986. Ein Beispiel in PHP tun

echo rawurlencode('测试') // Outputs %E6%B5%8B%E8%AF%95 

Auch urlencode() nach RFC zu codieren verwenden würde kodieren müssen 1866 für Query-Strings.

+0

Hi @Tim, bitte eine Idee, wie die chinesischen Zeichen für Kolben zu kodieren? Ich benutze die Flasche, um meine Website zu erstellen. Vielen Dank! –

+0

Ich habe noch nie einen Kolben verwendet, daher bin ich mir nicht sicher, aber [diese Google-Suche] (https://www.google.com/search?client=safari&rls=en&q=flask+web+framework&ie=UTF-8&oe=UTF- 8 # q = flask + encode + url) führte mich zu dieser [SO Antwort] (http://stackoverflow.com/a/5399164/2624391), wie man eine URL in Python kodiert. – Tim

+1

Danke @Tim, ich habe das Problem gelöst. Das Problem ist, dass ich den instance_path falsch benutzt habe ... Vielen Dank für deinen Hinweis! –