0

PDF内のテキストを強調表示しようとしていますが、強調表示された長方形をテキストの下に描画します。

ほとんどのPDFで問題なく動作しますが、強調表示しようとしているテキストの下に画像/背景がある場合に問題が発生しました。問題は、ハイライト長方形が画像の下にも描画されるため、表示されないことです。

私が持っている描画順序はこれです:

  • ページサイズで空白の長方形を描画します
  • ハイライトを描く
  • CGContextDrawPDFPage(context、page);を使用してPDFを描画します。

PDF画像とテキストを別々に描画する方法はありますか?私が行くことができるように

  • 空白の長方形
  • pdf画像/背景
  • ハイライト
  • pdfテキスト

pdf /コンテキストに何かをして、希望どおりに自動的に描画する必要がありますか?私はコンテキストをいじってみましたが、これまでのところ何も機能していません。すべてが完全なpdfの下または完全に上に描かれています

私が見たすべての読者がこれを行っているので(PDFExpert、GoodReader、iAnnotateなど)、不可能ではありません。まだ解決策を見つけていません:)助けていただければ、よろしくお願いします。

乾杯

4

1 に答える 1

1

私の理解では、これらの他のアプリはPDF自体を読み取ってレンダリングしているため(たとえば、テキストの選択や注釈の追加をサポートしている)、言及している方法で物事をはるかに簡単に階層化できます。

開始するCGPDFDocumentは、それ自体を描画できる不透明なオブジェクト(OOの意味では、透明度ではありません)ですが、ドキュメントのさまざまなサブレイヤーを分割してレンダリングする方法がわかりません。

今後の方法として、Core Image(iOS5 +)またはその他の方法を使用して、ハイライトレイヤーをPDFとブレンドすることを検討できます。適切なフィルター(乗算、多分)を使用した場合でも、暗いテキストは通過し、.3アルファハイライトは任意の背景とブレンドされます。

于 2012-08-10T22:45:12.557 に答える