PDFを画面内に表示したい

コメント

7件のコメント

  • Avatar
    鈴木@Unifinity

    渡辺様

    ご質問いただきありがとうございます。

    PDFの閲覧は別の画面をからPDFを表示する機能となり、
    ご質問を頂いた「PDFをアプリの画面内のコントロールに埋め込む」方法はございません。

    代替案とはなりますが、Webサーバーに配置したPDFの閲覧であれば、
    PDFを埋込表示するページをご用意いただき、画面に配置した「ウェブビュー」から表示することでPDFの埋め込み表示を行えるかと存じます。

    例えば、Windowsであればiframeなどを用いたPDFの埋め込み表示、AndroidやiOSの場合は「PDF.js」や「Google Docs Viewer」などがお使いいただけるかと存じます。

    ウェブビュー」でWebページを表示した際の動作はOS種別・バージョンなどによって異なるため、上記のようにOS毎に異なる方法を取る必要がございます。
    また、これらの方法は今後のOSのバージョンアップなどによりお使い頂けなくなる場合がございます。ご不便をおかけしますがご了承下さいますと幸いです。

    0
    コメントアクション パーマリンク
  • Avatar
    渡辺

    回答ありがとうございます。

    ウェブビューでローカルファイルのPDFを開くことはできないのでしょうか。
    ChromeやEdgeなどはURLに"file:///C:/work/xxxx.pdf"でPDFを開けるので、
    ウェブビューにコントロール/内容セットを行ってもだめでした……。

    やり方が間違っているか、ローカルファイルは対象外(ウェブビューの機能外)なのでしょうか。

    0
    コメントアクション パーマリンク
  • Avatar
    鈴木@Unifinity

    渡辺様

    ご確認いただきありがとうございます。

    「file:///~」を指定した際の動作につきましては詳細確認し、改めてご回答致します。
    お待たせしてしまい恐れ入りますが、お時間を頂けますと幸いです。

    以上、引き続き宜しくお願いいたします。

    0
    コメントアクション パーマリンク
  • Avatar
    鈴木@Unifinity

    渡辺様

    ご返信遅くなり申し訳ございません。

    バージョン4.2時点でUnifinityは file:// から始まるURIには対応しておりません。
    uapファイルからの相対パスで ..\..\work\xxxx.xxx のようにご指定頂ければ、ローカルのファイルをWebViewで表示することが出来ます。

    例えば、以下の画像のように処理を作成することで、データベースに保存したPDFデータ(base64)をファイルとして書き出し、その内容をWebViewに表示することが可能です。

    なお、Androidでは、システムから提供されるWebViewのコンポーネントそのものがPDFの表示に対応していないため、上記の方法でもPDFファイルを表示することが出来かねます。

    AndroidでWebViewにPDFファイルを表示したい場合には、「PDF.js」や「Google Docs Viewer」などをお使いいただくことをご検討下さいますと幸いです。

    0
    コメントアクション パーマリンク
  • Avatar
    渡辺

    回答ありがとうございます。回答の内容で試してみます。

    なお、Androidでは、システムから提供されるWebViewのコンポーネントそのものがPDFの表示に対応していないため、上記の方法でもPDFファイルを表示することが出来かねます。

    ちなみにAndroidのWebViewのコンポーネントが対応する可能性もあるのでしょうか。
    またiOSのWebViewのコンポーネントは対応していて、同様の方法で可能ということでしょうか。現状はWindowsで実現できればよいので、Android/iOSで不可能でも問題ありませんが、情報としてつかんでおければと思っています。

    0
    コメントアクション パーマリンク
  • Avatar
    鈴木@Unifinity

    渡辺様

    ご確認頂きありがとうございます。
    先日のご案内の内容でお試し頂けますと幸いです。

    ちなみにAndroidのWebViewのコンポーネントが対応する可能性もあるのでしょうか。
    またiOSのWebViewのコンポーネントは対応していて、同様の方法で可能ということでしょうか。現状はWindowsで実現できればよいので、Android/iOSで不可能でも問題ありませんが、情報としてつかんでおければと思っています。

    UnifinityのWebViewコントロールはOSから提供されるブラウザコンポーネントを用いて実装しております。
    そのため、Androidが提供するブラウザコンポーネントでPDFの直接表示がサポートされると、UnifinityのWebViewコントロールでも同様にPDFの閲覧が可能となる可能性がございます。

    iOSにつきましては現時点では先日の手法でWebViewコントロール内でPDFを閲覧できることを確認しています。

    0
    コメントアクション パーマリンク
  • Avatar
    渡辺

    uapファイルからの相対パスで ..\..\work\xxxx.xxx のようにご指定頂ければ、ローカルのファイルをWebViewで表示することが出来ます。

    相対パスをセットすることで表示できること確認できました。ありがとうございました。

    またAndroid,iOSのWebビューでのPDF表示の状況わかりました。あくまで各OSのコンポーネント次第ということですね。

     

    0
    コメントアクション パーマリンク

サインインしてコメントを残してください。