2009-08-26 18 views
2

Ich arbeite mit einem NSMage, die von einer PDF stammt. Wenn ich das Bild anfange, hat es nur einen NSAmageRep und das ist NSPDFImageRep. Das ist gut. Ich kann damit arbeiten. Ich kann herausfinden, wie viele Seiten es hat, und gehe zu einer bestimmten Seite, und zeichne es usw.So vermeiden Sie ein NSCachedImageRep

Das Problem ist, dass sobald ich den Rücken kehre, wird es in einen NSCachedImageRep verwandelt, was nicht funktioniert scheinen mehrere Seiten zu haben. Wenn ich nun den PDFImageRep in einer separaten Variablen belasse, wird er verfolgt, aber er ist nicht mehr mit dem Bild verknüpft. Wenn ich also das Bild zeichne, ist es immer noch auf derselben Seite.

Was fehlt mir?

danke.

Antwort

2

Sie müssen [image setDataRetained: YES] auf dem Bild aufrufen, damit Ihre ursprünglichen PDF-Daten erhalten bleiben, andernfalls wird es in einer Bitmap zwischengespeichert.

Wenn Sie immer noch Probleme haben, können Sie das Caching ganz ausschalten, indem Sie [image setCacheMode: NSImageCacheNever] verwenden.

0

Probieren Sie es am 10.6. Das Problem ist wahrscheinlich verschwunden.

Einzelheiten zu den NSMage-Änderungen finden Sie unter AppKit release notes.

+1

Das sind großartig, außer dass ich viele Benutzer (und einen Mitarbeiter!) Habe, die immer noch 10.3 verwenden !!! –

Verwandte Themen