Я хочу создать новый PDF-файл из существующего pdf-документа. У меня есть один файл в формате pdf, например «old.pdf», и от этого пользователя можно выбрать некоторые страницы и из выбранных страниц Я хочу создать новый pdf-файл, скажем, «temp1.pdf». Можно ли создать «temp1.pdf»? Plz помогите мне, а также предоставит пример кода для этого. Спасибо.iphone create pdf document from pdf pages
ответ
это мой демо-код, вы можете попробовать. Но этот код имеет некоторые проблемы. Новый сгенерированный PDF-файл содержит искаженный текст, у меня все еще нет возможности решить эту проблему (может ли кто-нибудь помочь?).
//old pdf
NSArray* old_PDF_paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* old_PDF_documentsDirectory = [old_PDF_paths objectAtIndex:0];
NSString* old_PDF_ABSOLUTE_PATH = [old_PDF_documentsDirectory stringByAppendingPathComponent:@"old.pdf"];
//new generate pdf
NSArray* output_PDF_paths = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES);
NSString* output_PDF_documentsDirectory = [output_PDF_paths objectAtIndex:0];
NSString* output_PDF_ABSOLUTE_PATH = [output_PDF_documentsDirectory stringByAppendingPathComponent:@"temp1.pdf"];
NSString* outpath = output_PDF_ABSOLUTE_PATH;
NSURL *url = [[NSURL alloc] initFileURLWithPath:old_PDF_ABSOLUTE_PATH];
CGPDFDocumentRef originalPDF = CGPDFDocumentCreateWithURL((CFURLRef)url);
// query for the number of pages
int ct = CGPDFDocumentGetNumberOfPages(originalPDF);
CGFloat width = 0.0f;
CGFloat height = 0.0f;
CGRect outRect = CGRectMake(0, 0, width, height);
CFURLRef outurl = CFURLCreateWithFileSystemPath (NULL, (CFStringRef)outpath, kCFURLPOSIXPathStyle, 0);
CFMutableDictionaryRef myDictionary = CFDictionaryCreateMutable(NULL, 0, &kCFTypeDictionaryKeyCallBacks, &kCFTypeDictionaryValueCallBacks);
// create a context for drawing
CGContextRef context = CGPDFContextCreateWithURL ((CFURLRef)outurl, &outRect, myDictionary); // 5
CFRelease(myDictionary);
for(int i = 1; i <= ct; ++i) {
//page render
CGPDFPageRef pdfPage = CGPDFDocumentGetPage(originalPDF, i);
CGRect pageMediaBox = CGPDFPageGetBoxRect(pdfPage, kCGPDFMediaBox);
CGContextBeginPage (context, &pageMediaBox);
CGContextDrawPDFPage(context, pdfPage);
CGContextEndPage (context);
}
CGContextClosePath(context);
CGContextRelease(context);
ok Спасибо за помощь. Я попробую это и дам вам знать. – jaynaiphone
Я реализовал этот код, и он извлекает null для originalPDF, и поэтому я не могу продолжить. Можете ли вы сказать мне, что будет средством? – Sarah
- 1. create pdf from asp.net page view
- 2. iphone: error and pdf pages question
- 3. Aspose PDF Merge PDF from byte [] []
- 4. Относительно itext pdf create
- 5. PDF в WPF Document
- 6. Pdf Document Link - PdfDocumentLink.ascx
- 7. Bluemix PDF Document Conversion
- 8. iTextsharp PDF Document Properties
- 9. Parse pdf from Django InMemoryUploadedFile
- 10. iPhone CatiledLayer pdf
- 11. JBOSS create PDF, XLS
- 12. PHP create savable PDF
- 13. dompdf create pdf
- 14. Настройка R markdown pdf document
- 15. cocoa osx print pdf document
- 16. WPF Application Display PDF Document
- 17. itextpdf pdf from mysql connection
- 18. Recurly - Получить счет-фактуру PDF (pdf from pdf string)
- 19. Merge PDF from outputStream
- 20. golang create pdf с кириллицей
- 21. itext android hindi pdf create
- 22. iPhone, CGPDFDocument - PDF-ссылки
- 23. NoMethodError in Pages # create
- 24. Matlab: PDF from Markov Chain
- 25. скачать pdf from ajax post
- 26. PDF Reader для iPhone
- 27. iphone PDF view CGPDFDocument
- 28. PDF-анализ в iPhone
- 29. PDF аннотатор iPhone
- 30. IPhone phonegap pdf issue
В чем конкретно ваш вопрос? Как сэкономить на диске? Как создать PDF-файл? –
У меня уже есть файл pdf, а затем с выбранных страниц этого файла pdf. Я хочу создать новый pdf-файл. – jaynaiphone
Я выполнил ваш код, его работа отлично. Я проверил его с различными типами PDF-файлов, я не видел никаких проблем. – CKT