Создание плиток из больших фотографий (iOs PhotoScroller) - PullRequest
4 голосов
/ 10 декабря 2010

Я изучаю сеанс WWDC # 104 для освоения UIScrollViews . Мне нужно создать скрипт, найти инструмент или написать скрипт, чтобы сгенерировать плитки, необходимые для CATiledLayer, из некоторой большой фотографии jpg.

1000 500 и 250 масштабных коэффициентов необходимы, и сгенерированные плитки должны соответствовать шаблону именования как это:

name_scale_col_row.jpg

Любое предложение для инструмента или сценария, которое я мог бы использовать для этого, или мне нужно написать его?

РЕДАКТИРОВАТЬ : Я работаю над своим собственным маленьким скриптом bash. Это то, что я делал до сих пор:

#!/bin/sh

file_list=`ls | grep png` 

for i in 25 50 100; do 
    for file in $file_list; do
        convert $file -scale ${i}%x${i}% -crop 256x256  \
        -set filename:tile "%[fx:page.x/256]_%[fx:page.y/256]" \
        +repage +adjoin "${file%.*}_${i}0_%[filename:tile].${file#*.}"
    done
done

Конечно, это далеко не настоящий инструмент, но он работает и соблюдает соглашение об именовании плиток в фотокроллере Apple. Любое предложение, улучшение приветствуется.

Ответы [ 3 ]

3 голосов
/ 15 декабря 2010

Этот скрипт автоматически сгенерирует все нужные вам плитки при разных разрешениях:

http://www.mikelin.ca/blog/2010/06/iphone-splitting-image-into-tiles-for-faster-loading-with-imagemagick/

Небольшое замечание: этот сценарий будет называть все с масштабными коэффициентами 100, 50 и т. Д., А не 1000, 500 и т. Д., Которые вы можете отрегулировать для этого, изменив 1000 на 100 в tileForScale: метод в TilingView.m пример PhotoScroller.

1 голос
/ 24 января 2013

Я также искал инструмент для генерации плиток и обнаружил, что в Photoshop (CS3 или более поздней версии) есть опция создания плиток JPEG для инструмента под названием Zoomify.В меню выберите «Файл»> «Экспорт»> «Масштаб» ... и в «Параметры браузера» заполните плитку размером 256 x 256 пикселей.

После нажатия [OK] будет создана папка TileGroup0 с плитками 256 пикселей.,Файлы называются: zoomlevel-column-row.jpg, тогда как файлы примеров Photoscroller называются filename_scale_column_row.png (файл 0-0-0.jpg можно удалить).Поэтому переименуйте jpg-файлы соответственно (1- = 125_, 2- = 250_, 3- = 500_ и т. Д.) Или просто исправьте tileName в tileForScale:row:col: (TilingView.m), чтобы загрузить правильный jpg-файл.

0 голосов
/ 19 мая 2011

Я использую два инструмента - Tilen для измельчения изображения, которое, к сожалению, начинает нумерацию плиток с 1, а затем Better Rename для настройки нумерации плиток и добавления соответствующих префиксы и суффиксы к именам. Вместе они делают отличную работу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...