Я использую следующий псевдокод для создания документа PDF:
CGContextRef context = CGPDFContextCreateWithURL(url, &rect, NULL);
for (int i = 1; i <= N; i++)
{
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
CGContextBeginPage(context, &mediaBox);
// drawing code
CGContextEndPage(context);
[pool release];
}
CGContextRelease(context);
Очень хорошо работает с небольшими документами (N < 100
страницы), но использует слишком много
памяти и вылетает, если документ имеет более 400 страниц (он получил
два предупреждения памяти перед сбоем.) Я удостоверился, что не было никаких утечек, используя
Инструменты. Что вы посоветуете при создании больших PDF-документов на iOS? Большое спасибо.
edit: создание pdf выполняется в фоновом потоке.