• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
Re: NSSharingService with Animated GIFs?
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: NSSharingService with Animated GIFs?


  • Subject: Re: NSSharingService with Animated GIFs?
  • From: Ken Thomases <email@hidden>
  • Date: Fri, 16 May 2014 20:51:41 -0500

On May 16, 2014, at 10:26 AM, Charles Carver wrote:

>> I'm pretty new to Objective-C, but have been mostly understanding everything so far. I am stuck, however, on trying to share an animated GIF through NSSharingService.
>>
>> I am attaching the image like so, where “image" is a string containing the URL of an animated GIF (http://i.imgur.com/V8w9fKt.gif, for example):
>>
>> NSImage *imageData = [[NSImage alloc] initWithContentsOfURL:[NSURL URLWithString:image]];
>> NSArray *shareItems = [NSArray arrayWithObjects:imageData, @“Text", nil];
>> NSSharingService *service = [NSSharingService sharingServiceNamed:NSSharingServiceNameComposeMessage];
>> service.delegate = self;
>> [service performWithItems:shareItems];
>>
>> When the code is run and the message is sent, however, the image gets sent as a PNG file instead of a GIF.

Instead of putting an NSImage into the list, try creating an NSPasteboardItem and setting its data to be the image data and its type to kUTTypeGIF:

    NSData* data = [NSData dataWithContentsOfURL:[NSURL URLWithString:image]];
    NSPasteboardItem* item = [[NSPasteboardItem alloc] init];
    [item setData:data forType:(__bridge NSString*)kUTTypeGIF];
    NSArray *shareItems = [NSArray arrayWithObjects:item, @“Text", nil];
    …

It may still end up as a PNG because the pasteboard server will translate from any known image type to the most common interchange formats, and the receiving end gets to pick its preferred type.

If that still doesn't work, you can try putting either the original URL into the shareItems array or the file URL from a locally-saved file.

Regards,
Ken


_______________________________________________

Cocoa-dev mailing list (email@hidden)

Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com

Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Follow-Ups:
    • Re: NSSharingService with Animated GIFs?
      • From: Charles Carver <email@hidden>
References: 
 >Re: NSSharingService with Animated GIFs? (From: Charles Carver <email@hidden>)

  • Prev by Date: History of iTunes Store music previews
  • Next by Date: Re: Share and store RSA - public key in java server and vice versa
  • Previous by thread: Re: NSSharingService with Animated GIFs?
  • Next by thread: Re: NSSharingService with Animated GIFs?
  • Index(es):
    • Date
    • Thread