从Facebook和Twitter活动控制器发布Pdf

时间:2013-09-16 18:40:19

标签: ios objective-c pdf uiactivityviewcontroller

我有一个代码可以将UIView转换为pdf。现在我希望能够在UIActivityController中使用此PDF进行Facebook和Twitter集成。我不知道如何去做,但PDF的代码显示如下:

-(void)createPDFfromUIView:(UIView*)aView saveToDocumentsWithFileName:(NSString*)aFilename
{
    // Creates a mutable data object for updating with binary data, like a byte array
    NSMutableData *pdfData = [NSMutableData data];
    // Points the pdf converter to the mutable data object and to the UIView to be converted
    UIGraphicsBeginPDFContextToData(pdfData, aView.bounds, nil);
    UIGraphicsBeginPDFPage();
    CGContextRef pdfContext = UIGraphicsGetCurrentContext();


    // draws rect to the view and thus this is captured by UIGraphicsBeginPDFContextToData

    [aView.layer renderInContext:pdfContext];

    // remove PDF rendering context
    UIGraphicsEndPDFContext();

    // Retrieves the document directories from the iOS device
    NSArray* documentDirectories = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask,YES);

    NSString* documentDirectory = [documentDirectories objectAtIndex:0];
    NSString* documentDirectoryFilename = [documentDirectory stringByAppendingPathComponent:aFilename];

    // instructs the mutable data object to write its context to a file on disk
    [pdfData writeToFile:documentDirectoryFilename atomically:YES];
    NSLog(@"documentDirectoryFileName: %@",documentDirectoryFilename);
}

如何初始化PDF以便在Facebook和Twitter上发布,甚至发送电子邮件?

1 个答案:

答案 0 :(得分:0)

可悲的是,您无法将pdf上传到Facebook和Twitter。如果你有一个FTP服务器将它上传到..

,这可能是最好的

您可以邮寄和打印,请查看

    NSURL * url = [NSURL fileURLWithPath: [[NSBundle mainBundle] pathForResource: @ "data" ofType: @ "pdf"]];
    UIActivityViewController *act=[[UIActivityViewController alloc]initWithActivityItems:@[url] applicationActivities:nil];
    [self presentViewController:act animated:YES completion:nil];