FROM : Jonathan Grynspan
DATE : Sat Aug 12 07:43:25 2006
You can find more information on Cocoa's graphics model at http://
developer.apple.com/documentation/Cocoa/Conceptual/CocoaDrawingGuide/
index.html . Of particular interest to you may be the sections on
Graphics Contexts and Images.
-Jonathan Grynspan
On 12-Aug-06, at 1:34 AM, Chad Leigh wrote:
>
> On Aug 11, 2006, at 11:28 PM, Jonathan Grynspan wrote:
>
>> Try the following:
>>
>> NSImage *partOfImage(NSImage *input, NSRect targetRect) {
>> if (input) {
>> NSImage *output = [[NSImage alloc] initWithSize: targetRect.size];
>> [output lockFocus];
>> [input
>> drawAtPoint: NSZeroPoint
>> fromRect: targetRect
>> operation: NSCompositeCopy
>> fraction: 1.0f];
>> [output unlockFocus];
>> return [output autorelease];
>> } else {
>> return nil;
>> }
>> }
>
> Thanks, I will. I've been reading the lockFocus and the
> drawAtPoint stuff since I posted the first request, trying to put
> my brain around it. This helps immensely!
>
> Thanks
> Chad
>
>>
>> -Jonathan Grynspan
>>
>> On 12-Aug-06, at 1:17 AM, Chad Leigh wrote:
>>
>>> I have a Cocoa app and I get a PDF image over the internet that I
>>> store in an NSImage using
>>>
>>> label = [[NSImage alloc] initWithData:finalImage];
>>>
>>>
>>> The image previously was a PNG image and was exactly the image
>>> needed. Now that they pass a PDF image, they pass an image that
>>> is an image of a complete piece of paper with the image I am
>>> interested in placed on the upper half of this virtual paper (the
>>> rest is just blank). The image is always in the same place and
>>> the same size so I can determine a Rect that will always work to
>>> select it. I want to extract this image out of the PDF and
>>> create a new NSImage (or overwrite the old one, I don't care)
>>> that I can use later on to print in my own existing print routine
>>> and to display thumbnails of it.
>>>
>>> I do not see how to go about it. Most of the draw/composite
>>> routines I see in NSImage rely on an existing userspace to draw
>>> into. I want to "draw" into a new NSImage. My brain is having a
>>> hard time adjusting to think about how to do this.
>>>
>>> Ideally I want something like
>>>
>>> NSImage *newImage = [[NSImage alloc] initFromImage:oldImage
>>> usingRect:targetRect];
>>>
>>> I expect what I want to do is very easy but if someone could
>>> point me on the way I should be exploring I would appreciate it.
>>>
>>>
>>> Thanks
>>> Chad
>>>
>>> _______________________________________________
>>> MacOSX-dev mailing list
>>> <email_removed>
>>> http://www.omnigroup.com/mailman/listinfo/macosx-dev
>>
>> _______________________________________________
>> MacOSX-dev mailing list
>> <email_removed>
>> http://www.omnigroup.com/mailman/listinfo/macosx-dev
>
> _______________________________________________
> MacOSX-dev mailing list
> <email_removed>
> http://www.omnigroup.com/mailman/listinfo/macosx-dev
DATE : Sat Aug 12 07:43:25 2006
You can find more information on Cocoa's graphics model at http://
developer.apple.com/documentation/Cocoa/Conceptual/CocoaDrawingGuide/
index.html . Of particular interest to you may be the sections on
Graphics Contexts and Images.
-Jonathan Grynspan
On 12-Aug-06, at 1:34 AM, Chad Leigh wrote:
>
> On Aug 11, 2006, at 11:28 PM, Jonathan Grynspan wrote:
>
>> Try the following:
>>
>> NSImage *partOfImage(NSImage *input, NSRect targetRect) {
>> if (input) {
>> NSImage *output = [[NSImage alloc] initWithSize: targetRect.size];
>> [output lockFocus];
>> [input
>> drawAtPoint: NSZeroPoint
>> fromRect: targetRect
>> operation: NSCompositeCopy
>> fraction: 1.0f];
>> [output unlockFocus];
>> return [output autorelease];
>> } else {
>> return nil;
>> }
>> }
>
> Thanks, I will. I've been reading the lockFocus and the
> drawAtPoint stuff since I posted the first request, trying to put
> my brain around it. This helps immensely!
>
> Thanks
> Chad
>
>>
>> -Jonathan Grynspan
>>
>> On 12-Aug-06, at 1:17 AM, Chad Leigh wrote:
>>
>>> I have a Cocoa app and I get a PDF image over the internet that I
>>> store in an NSImage using
>>>
>>> label = [[NSImage alloc] initWithData:finalImage];
>>>
>>>
>>> The image previously was a PNG image and was exactly the image
>>> needed. Now that they pass a PDF image, they pass an image that
>>> is an image of a complete piece of paper with the image I am
>>> interested in placed on the upper half of this virtual paper (the
>>> rest is just blank). The image is always in the same place and
>>> the same size so I can determine a Rect that will always work to
>>> select it. I want to extract this image out of the PDF and
>>> create a new NSImage (or overwrite the old one, I don't care)
>>> that I can use later on to print in my own existing print routine
>>> and to display thumbnails of it.
>>>
>>> I do not see how to go about it. Most of the draw/composite
>>> routines I see in NSImage rely on an existing userspace to draw
>>> into. I want to "draw" into a new NSImage. My brain is having a
>>> hard time adjusting to think about how to do this.
>>>
>>> Ideally I want something like
>>>
>>> NSImage *newImage = [[NSImage alloc] initFromImage:oldImage
>>> usingRect:targetRect];
>>>
>>> I expect what I want to do is very easy but if someone could
>>> point me on the way I should be exploring I would appreciate it.
>>>
>>>
>>> Thanks
>>> Chad
>>>
>>> _______________________________________________
>>> MacOSX-dev mailing list
>>> <email_removed>
>>> http://www.omnigroup.com/mailman/listinfo/macosx-dev
>>
>> _______________________________________________
>> MacOSX-dev mailing list
>> <email_removed>
>> http://www.omnigroup.com/mailman/listinfo/macosx-dev
>
> _______________________________________________
> MacOSX-dev mailing list
> <email_removed>
> http://www.omnigroup.com/mailman/listinfo/macosx-dev






Cocoa mail archive

