0

UIScrollView から pdf を作成しています。

それは正常に動作し、PDFを作成しますが、問題は、pdfの作成後にscrollViewが画面から消え、アプリを再度ロードすると再び表示されることです。 PDFを作成しています。

私は次のコードを使用しています:

-(void)createPDFfromUIView: (UIView*)aView saveToDocumentsWithFileName: (NSString*)aFilename
{
    NSMutableData *pdfData = [NSMutableData data];

    CGRect scrollSize = CGRectMake(1018,76,1010,1600);

    [scrollView setFrame:CGRectMake(1018,76,1010,1600)];

    // Points the pdf converter to the mutable data object and to the UIView to be converted
    UIGraphicsBeginPDFContextToData(pdfData,scrollView.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);
}
4

1 に答える 1

0

私が見る限り、問題は以下の行にあります

[scrollView setFrame:CGRectMake(1018,76,1010,1600)];

Origin X が 1018 であるため、これによりスクロールビューが表示領域外になります。したがって、実際には非表示ではなく、画面または表示領域の外にあります。

その線は本当に必要ですか。

于 2013-05-20T05:01:13.383 に答える