1

私が構築している iPhone アプリで MathJax を使用しようとしています。私は現在、MathJax と MathJax のアンパック バージョンの両方を Resources フォルダーに持っています。MathJax テスト フォルダー内の sample.html ファイルの直接コピーである HTML ファイルが Resources フォルダー内にあります。次に、ロードするビューがあり、データをロードするときにUIWebViewにデータをロードします。

ビューが読み込まれると、次のようにファイルからデータが取得されます。

NSString *htmlText = [NSString stringWithContentsOfFile:filePath encoding:NSUTF8StringEncoding error:nil];

ファイル パスは次のようにして取得されます。

次に、リソース フォルダーに MathJax フォルダーを配置し、ビルド フェーズの [コンパイル ソース] ではなく [バンドル リソースのコピー] の下にリストされるようにセットアップします。

文字列に htmlText が含まれたら。UIWebView にデータをロードします。私はこれを次の方法で行います:

[htmlView loadHTMLString:htmlText baseURL:[[NSBundle mainBundle] resourceURL]];

Web ページは UIWebView に読み込まれますが、LaTex はどれも正しくレンダリングされません。MathJax フォルダー内の sample.html ページを読み込むと、正しく読み込まれるので、その設定が正しいことがわかります。どんな助けでも素晴らしいでしょう。

ありがとう

4

2 に答える 2

1

使用する:

NSString *basePath = [[NSBundle mainBundle] 
                       pathForResource:@"htmlFileName" ofType:@"html" 
                       inDirectory:@"."];
NSURL *baseURL = [NSURL fileURLWithPath:basePath];
[webview loadHTMLString:htmlString baseURL:baseURL];

このようにして、相対パスが適切に使用されます。

于 2012-07-13T12:21:06.153 に答える
0

MathJax v1.1a をローカルで使用する方法に関する新しい投稿を追加しまし。Davide は、まだ試す時間がないいくつかのさらなる改善を提案しましたが、既存のコードが問題の解決に役立つはずです。これが役立つことを願っています。

于 2012-02-27T23:16:48.603 に答える