30 lines
932 B
Markdown
30 lines
932 B
Markdown
# Oh-My-Stitcher
|
|
|
|
## How to build
|
|
|
|
1. Clone this repo (obviously)
|
|
2. Enter repo (solution) directory
|
|
3. `dotnet build`
|
|
|
|
## How to run
|
|
|
|
0. This project uses ASP.Net AoT, please don't forget to install `zlib1g-dev`.
|
|
|
|
1. Publish it
|
|
- Enter `src/Oh.My.Stitcher`
|
|
- `dotnet publish -c Release -r linux-arm64`
|
|
|
|
2. Run it
|
|
- Enter `src/Oh.My.Stitcher/bin/Release/net8.0/linux-arm64/publish`
|
|
- `ASSET_PATH_RO=/path/to/tiles ./Oh.My.Stitcher`
|
|
|
|
## Caching
|
|
|
|
For better performance, this stitcher use caching mechanism. The full image size would be GigaBytes!!!, so
|
|
the cache is limited, max size that can be cached: 720 x 720 x 128 (approximately 70MB).
|
|
It uses OS temporary directory (`Path.GetTempPath` or `/tmp`), please make sure it's writable.
|
|
|
|
No, this doesn't break the rule, the cache is created and used AFTER the first API request.
|
|
|
|
Use cases:
|
|
- consecutive request with the same rect and scale (e.g. "A1:AE55" then "AE1:A55")
|