QuickLookプラグインをビルドしています。ユーザーがスペースバーを押すとポップアップするウィンドウの幅を変更したい。QuickLook Pluginのウィンドウサイズを設定する
高さと幅がカスタマイズ可能なプロジェクトのinfo.plistファイルには2つのキーがあります。これらの値を変更しても、プレビューウィンドウのサイズを希望のサイズにすることはできません。
私は他に何を試すべきか分かりません。何か案が?
ありがとうございます!
QuickLookプラグインをビルドしています。ユーザーがスペースバーを押すとポップアップするウィンドウの幅を変更したい。QuickLook Pluginのウィンドウサイズを設定する
高さと幅がカスタマイズ可能なプロジェクトのinfo.plistファイルには2つのキーがあります。これらの値を変更しても、プレビューウィンドウのサイズを希望のサイズにすることはできません。
私は他に何を試すべきか分かりません。何か案が?
ありがとうございます!
私は少しこれを掘るだろう。私は以下の提案を試していないので、誰も希望を得ることはできません。手動options
辞書の引数をチェックしkQLPreviewPropertyWidthKey
とkQLPreviewPropertyHeightKey
キーは確かに希望CFNumber
値にマップされていることを確認かもしれませんが、何かする前に
OSStatus (*GeneratePreviewForURL)(
void *thisInterface,
QLPreviewRequestRef preview,
CFURLRef url,
CFStringRef contentTypeUTI,
CFDictionaryRef options
);
:私はあなたが発電機のコールバックを使用していると仮定します。これらのプロパティのそれぞれを参照
、アップルQuickLookのプログラミングガイドは言う:このプロパティがヒントであることを
注意を。クイックルックは、プレビューの種類によっては自動的に幅を に設定することがあります。この値は、CFNumberオブジェクトにカプセル化された である必要があります。
(編集:。。あなたのプレビュー表示が柔軟であれば、あなただけの思考上記の文のとおり、クイックルックがあなたのサイズヒントを称えるれるプレビュータイプを見つけてみてください)nm
を実行
QuickLookフレームワークのバイナリには、上記の幅と高さのキーと同様に、いくつかの文書化されていないkQLPreviewProperty--
の定数が明らかになりました。私の注意を引いたのはkQLPreviewPropertyAutoSizeKey
でした。サイズを自動的にに設定するためのヒントを無視するというアップルの声明を思い出して、これは重要なのでしょうか? QuickLook.framework/Headers/QLBase.h
のコンベンションに続いて、あなたは、あなたがoptions
辞書でそのプロパティキーでCFNumber 0を関連付ける試みることができる
extern const CFStringRef kQLPreviewPropertyAutoSizeKey;
を宣言してみてください。その他の文書化されていない鍵があります(kQLPreviewPropertyAttributesKey
など)。あなたが言及戻るInfo.plistファイルへ
、アップルsaysこれらのキーQLPreviewWidth
とQLPreviewHeight
について:
この数は、クイックルックに プレビューの(ポイント単位)幅のためのヒントを提供します。 ジェネレータがプレビューを作成するのに時間がかかりすぎて になると、これらの値が使用されます。(重点追加)
これは、誰かがあなたのジェネレータでsleep()を呼び出すという恐ろしい提案をする場所です。しかし、私はという理由で困惑しています。なぜなら、アップルは、発電機の待ち時間に応じてサイズのヒントに従うことにします。 (?)
編集:はまた、上記のステートメントは、Info.plistのヒントがポイント(ないピクセルで表現しなければならないと言う注意してください)、ユーザーの画面の解像度に依存unit。
最近、私はQuick Look Pluginを自分で開発していましたが、HTML + CSSを使用して同じ問題に直面しました。 私の解決策は、Xcodeとqlmanageのプラグインを実行可能ファイルとしてテストするのではなく、から実際の.qlgeneratorを試してみることでした。
ユーザライブラリからジェネレータを呼び出すとき、クイックルックウィンドウは、* -Info.plistで指定したのとまったく同じようにサイズが変更されました。
私はアップデートをありがとう! – Andres
ジェネレータは画像またはHTMLを作成するので、プレビューはデフォルトの自然な大きさに基づいていますか? –
@Keniger、それは面白いです。 HTMLのプレビューでCSSのmin-widthプロパティがどのような影響を及ぼすのだろうかと思います。 – jrodatus
助けてくれてありがとう。私はすでに最小幅を追加しようとしました。これは、 "HTML"自体のサイズを変更しますが、quicklookプラグインウィンドウのサイズは変更しません。窓は常に同じ大きさからです... – Andres