从大型照片生成图块(iOs PhotoScroller)

时间:2010-12-09 21:22:24

标签: ios photo tiles

我正在研究 WWDC会话#104,以掌握UIScrollViews 。我需要创建一个脚本或找到一个工具或编写一个脚本来从一些大型jpg照片中生成CATiledLayer所需的图块。

需要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 photoscroller瓷砖的命名约定。任何建议,改进都表示赞赏。

3 个答案:

答案 0 :(得分:3)

此脚本将自动生成所有不同分辨率所需的所有切片:

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

一个小小的抬头:该脚本会将所有内容命名为100,50等比例因子,而不是1000,500等。您可以通过在TilingView.m中的tileForScale:方法中将1000更改为100来进行调整。 PhotoScroller示例。

答案 1 :(得分:1)

我还在寻找一种生成图块的工具,并发现Photoshop(CS3或更高版本)包含一个为Zoomify工具创建JPEG图块的选项。从菜单中选择文件>出口>缩放...并在“浏览器选项”中填写256 x 256像素的tileSize。

单击[确定]后,将使用256像素图块创建文件夹TileGroup0。 文件命名为:zoomlevel-column-row.jpg,而Photoscroller的示例文件名为filename_scale_column_row.png0-0-0.jpg文件可以丢弃)。因此,相应地重命名jpg文件(1- = 125_, 2- = 250_, 3- = 500_等)或仅修复tileName(TilingView.m)中的tileForScale:row:col:以加载正确的jpg文件。

答案 2 :(得分:0)

我正在使用两个工具 - Tilen来切割图像,不幸的是,它会在1处开始拼贴编号,然后Better Rename用于调整图块编号并为其添加适当的前缀和后缀。名。他们一起做得很好。