1. 程式人生 > >iOS 中將位元組流陣列轉化成pdf

iOS 中將位元組流陣列轉化成pdf

. 因為前一段時間公司的專案需求,是pdf方面的,覺得網上的資料不是很多,所以也想發表一下,希望會能有用;

在載入到頁面的檔案是pdf格式,並且以pdf格式展現在頁面上,當我看到後想為啥不傳個圖片,載入頁面上多方便啊.後來的得知傳過來的檔案是多頁的,如果用圖片不符合要求.首先,我先呼叫介面列印看了下後臺給傳的檔案的資料是什麼形式的,....... ,位元組流陣列,當時有點懵,就試著將接收到的陣列轉化二進位制,然後以pdf格式寫到沙盒中,後來發現不行.於是網上查找了一番,再加一些研究,最終實現了.程式碼如下


// 獲取後臺的位元組流陣列

NSArray *pdfArray = models.pdfInfo

;

NSInteger len = pdfArray.count;

Byte *bytes = malloc(len);

//遍歷陣列將陣列的資料轉成byte型別

for (int i=0; i < len; i++) {

int value = [[pdfArray objectAtIndex:i] intValue];

                    *(bytes +i) = value & 0xff;

                }

//位元組轉化成二進位制

NSData *pdfD = [[NSDataalloc] initWithBytes:bytes length:len];

//document路徑

NSString *path = [selfpathFileForProcess:[NSStringstringWithFormat:@"one%lu.pdf",(unsignedlong)idx]];

                [self.fileArryaddObject:path];

//寫到沙盒中

                [pdfD writeToFile:path atomically:YES];

二.pdf的顯示和翻頁效果,網上比較多,可以參考

http://blog.csdn.net/yiyaaixuexi/article/details/7645725