2
我需要在NSTextView中調整NSImage的大小。而我做到了,但是當我嘗試在NSTextView中更改圖像的位置(我的NSImage)時 - 那麼我的圖像就會變成舊尺寸。有人能幫助我嗎?下面是代碼,我使用:在NSTextView中調整NSImage的大小
- (void)textView:(NSTextView *)textView doubleClickedOnCell:(id <NSTextAttachmentCell>)cell inRect:(NSRect)cellFrame atIndex:(NSUInteger)charIndex {
NSImage * image = [(NSCell *)cell image];
NSSize imageSize = [image size];
self.resizeImageController.sizeBefore = imageSize;
self.resizeImageController.imageForResize = image;
self.resizeImageController.textViewWithImage = textView;
self.resizeImageController.textAttachmentCell = cell;
[[self.resizeImageController window]orderFront:self];
}
它是委託的NSTextView方法,而且比我調整IMGE在resizeImageController的方法 - (無效)resizeImage; :
- (void)resizeImage {
NSSize newSize = ...;//Get new image size - the dimensions are correct, the error is not exactly here
[self.imageForResize setSize:newSize];
NSImage *newImage = [[[NSImage alloc] initWithSize:newSize] autorelease];
NSBitmapImageRep *rep = [[[NSBitmapImageRep alloc]
initWithData:[self.imageForResize TIFFRepresentation]] autorelease];
[rep setSize:newSize];
[newImage addRepresentation:rep];
[self.textAttachmentCell setImage:newImage];
self.imageForResize = newImage;
[[self.textViewWithImage layoutManager] textContainerChangedGeometry: [self.textViewWithImage textContainer]];
}