【发布时间】:2010-07-14 10:43:45
【问题描述】:
我有一个 1280 x 1664 的图像,我想使用 Apple 提供的 ScrollViewSuite 示例,但我需要将此图像剪切到多个缩放级别。
那么,有人知道我如何以多个缩放级别平铺图像吗?一定有一种简单的方法可以将图像耕作到 256x256 而无需通过 Photoshop 手动剪切?
【问题讨论】:
-
我不确定我是否理解您的问题。为什么要“剪切”图像?
我有一个 1280 x 1664 的图像,我想使用 Apple 提供的 ScrollViewSuite 示例,但我需要将此图像剪切到多个缩放级别。
那么,有人知道我如何以多个缩放级别平铺图像吗?一定有一种简单的方法可以将图像耕作到 256x256 而无需通过 Photoshop 手动剪切?
【问题讨论】:
很棒的发现。我根据您的发现做了一些研究,并设法将行和列添加到输出文件名中。我还将图像的大小调整为我希望图像的百分比。所以我现在可以从 1 张大图完成所有操作。
convert bigimage.png -resize 25% -crop 256x256 -set filename:tile "%[fx:page.x/256+1]_%[fx:page.y/256+1]" +repage +adjoin "tile_25_%[filename:tile].png"
非常感谢您帮助我,它为我节省了很多时间。希望我帮助了你?
【讨论】:
好笑——我昨晚上床睡觉了,我知道这是我今天早上必须解决的第一件事。我刚刚找到了一个非常简单的解决方案。 ImageMagick 使用带有 -crop 选项的 convert 开箱即用:
convert bigimage.png -crop 256x256 tile.png
这会根据需要生成尽可能多的图块文件,最重要的是在右侧和底部创建矩形。我探索的所有其他解决方案都从图像中生成了 n、m 个大小均匀的图块。
图块编号为 tile-##.png,其中 ## 从零开始。我更喜欢-row#-col#.png,但这对我有用。 CATiledLayer,我来了。
【讨论】:
Jeff LaMarche 对此提出了自己的解决方案:
http://iphonedevelopment.blogspot.com/2010/10/cutting-large-images-into-tiles-for.html
OS X App Store 上还有一个名为 Tilen 的应用程序:
【讨论】:
您还可以使用 gdal2Tiles 实用程序 - 这对于从大型输入图像生成地图叠加图块特别有效。
在 StackOverflow 上搜索“gdal2tiles”,并务必查看 Apple 的 TileMap 示例代码。 TileMap 可通过 WWDC 2010(免费)下载示例获得。
【讨论】: