問題タブ [ios-pdfkit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
222 参照

ios - PDFリーダーナイトモード

私は PDF リーダーに取り組んでいますが、PDF ドキュメントのナイト モードを作成する際に問題に直面しています。背景が黒で前景が白の新しい PDF ドキュメントが正常に作成されました。しかし、すでに作成されたドキュメントに対してはできません私は新しいPDFドキュメントに対して行っています

誰かが問題を知っている場合は助けてください。

0 投票する
4 に答える
2347 参照

ios - iOS PDFKitはPDFViewでPDFフレームを調整します

高さの異なるページを含む PDF を、一度に 1 ページずつ、ページ間に隙間なく、各ページの上部をビューの上部に揃えて、水平方向にページ形式で表示したいと考えています。例えば:

望ましいレンダリング

PDFKit特にこれらの設定は次のPDFView方法で実現できるため、を使用したいと思います。

ただし、これにより次の結果が生成されます。

実際のレンダリング

これは、ページの高さが異なるためです。各ページは の垂直方向の中央に配置されPDFView、ページの高さがビューの高さよりも大きい場合 (ページ 2 など)、収まるように縦横比が調整されます。

最初の問題である垂直オフセットを解決するために、いくつかのことを試みました。まず、これは大雑把で、ビュー階層を調べてPDFTextInputView、ページがレンダリングされるプライベート ビュー ( という名前のクラスのビュー) を見つけた後、そのフレームorigin.y0最も外側のスクロールビュー (別のプライベート ビュー) がスクロールします。これは、次または前のページがビューにスクロールされるたびに、ページがビューの上部にレンダリングされるという点で機能します。ただし、ユーザーがそのページをピンチしてズームすると、そのフレームは自動的に中央に戻ります。このアプローチは、プライベート ビュー階層に依存することを除けば、うまくいきません。

「背の高いページの問題」(ページ 2) を解決するために、新しいページが表示されるたびに PDFView の倍率を調整してみました。悲しいことに、.PDFViewPageChanged通知はスクロール ビューの減速が終了したにのみ発生するため、スクロール イン時にページがズーム アウトされ、スケール ファクターを調整すると、画面の幅に合わせてジャンプします。次に.PDFViewVisiblePagesChanged、次/前のページが表示されると起動する に目を向けました (さらに数回、これで問題ありません)。これには と同じ問題があり.PDFViewPageChangedます。

私が試した他のこと:

  • transformドキュメント ビューの調整
  • ピンチ ジェスチャをインターセプトし、ドキュメント ビューの中心を調整する
  • 独自のページコントローラーを作成し、ページごとに 1 つの PDF ページをレンダリングします (を使用しないpdfView.usePageViewController)

私が求めているものをどのように達成できるかについて、誰かアイデアはありますか?

0 投票する
0 に答える
48 参照

swift - iOS 13 でバックグラウンド フェッチを使用して PDF を更新するにはどうすればよいですか?

iOS 13 の新しいバックグラウンド フェッチに関する多くのビデオを見て、多くの記事を読みましたが、まだわかりません。食事アプリを作っています。日々変わる「今日」の献立などをご紹介します。これまでのところ、PDFKit を使用してレストランのメニュー例を表示し、「今日」と「明日」のメニューをプロジェクト フォルダーにダウンロードしましたが、バックグラウンド フェッチを使用してメニューを毎日更新したいと考えています。これまでのところ、更新タスクを使用してコンテンツを更新し、処理を使用してクリーンアップする「バックグラウンド フェッチ」と「バックグラウンド処理」のボックスをチェックする必要があることだけを理解していました。

そこからURLを取得するためにpdfをアップロードする自分のWebサイトが必要かどうかも疑問に思っています。最終的には画像といくつかのラベルも更新する必要がありますが、原則を理解したら、自分でそれを行うことができるようになることを願っています.

これまでのアプリをよりよく理解できるように、コードとビュー コントローラーのスクリーンショットを示します。

ここに画像の説明を入力

あなたが私を助けてくれることを願っています。ありがとうございました!