Как преобразовать большой файл SVG в мозаичный PNGs?

У меня есть большой файл SVG (приблизительно 60 МБ, 10000x10000 пикселей, но с потенциалом для получения намного более крупным), и я желаю создать, скажем, многих размещенных рядом 256x256 изображения PNG от него (в том примере были бы изображения 1600 года; раунд (10000/256) ^2).

У кого-либо есть какая-либо идея того, как сделать это на веб-сервере (выполняющий PHP среди других вещей)? Я думал о rsvg, но это, кажется, не имеет функциональности для изменения ограничительной рамки (и я постарался бы не делать его вручную для каждого раздела). ImageMagick смог делать это, но у меня не было большой удачи с тем, чтобы заставлять это работать. Используя rsvg для создания большого PNG и затем использования инструмента, выделенного мозаичному размещению очень больших изображений, мог бы работать, но у меня не было удачи при нахождении такой вещи! Скорость не является действительно проблемой, хотя это желательно, так в самом худшем случае, я мог бы изучить изменение ограничительной рамки SVG на раздел. Я видел, что поколение брало навсегда, хотя!

Кто-либо знает о каких-либо методах, чтобы сделать это?

Редактирование 02.03.2016:

Я недавно возвратился к необходимости в ответе для этого вопроса снова, и Inkscape, кажется, единственный инструмент, который может представить SVGs для данной области в данных размерах (svgexport почти отвечает этим требованиям, но это не позволяет Вам изменить соотношение сторон).

Моя цель состояла в том, чтобы разместить SVG рядом в 256x256 мозаики, и я теперь успешно сделал сценарий, который может разместить произвольно большой SVG рядом путем выполнения в повторенном рендеринге inkscape приблизительно из 16,000 x 16,000 и мозаичное размещение получающихся изображений. Я успешно представил SVGs, где размеры составляют более чем 500,000 x 500 000 пикселей — никакие проблемы с использованием памяти (просто требуется много времени!)

6
задан Robert 2 March 2016 в 13:19
поделиться

1 ответ

Я бы посмотрел на Apache Batik . В частности, их SVG Rasterizer выглядит как раз то, что вам нужно.

Я никогда не использовал его для гигантских файлов SVG, поэтому не знаю, оптимизирован он для этого случая или нет.

1
ответ дан 10 December 2019 в 00:32
поделиться
Другие вопросы по тегам:

Похожие вопросы: