Как я могу разбить большой tif-файл на несколько UIImage для отображения в UIImageView?

#iphone #ios #uiimage

#iPhone #iOS #uiimage

Вопрос:

Я использую веб-сервис, который возвращает электронные факсы в виде tif (текст в кодировке base 64). Дело в том, что он возвращает многостраничные факсы в виде одного большого файла tiff, и в идеале я хочу, чтобы пользователь мог просматривать различные страницы. Когда я декодирую текст и показываю, в UIImageView отображается только первая страница.

Может кто-нибудь указать мне правильное направление?

Комментарии:

1. если конечный uiimage содержит полное изображение, тогда вы можете рассчитать количество страниц, используя размеры изображения, а затем отобразить определенные области изображения…

2. да, но как разбить файл tif на страницы?

3. рендеринг разных областей изображения, я полагаю.

Ответ №1:

Я создал свое собственное решение для этого: NSTiffSplitter. Вы можете найти это на github.

 NSString *pathToImage = [[NSBundle mainBundle] pathForResource:@"Example" ofType:@"tiff"];
NSTiffSplitter* splitter = [[NSTiffSplitter alloc] initWithPathToImage:pathToImage];
UIImage *page = [[UIImage alloc] initWithData:[splitter dataForImage:page]];
yourImageView.image = page;
[page release];