Как преобразовать PNG-изображение в SVG?
Как преобразовать PNG-изображение в SVG?
Ответ 1
Существует веб-сайт, на котором вы можете загрузить свое изображение и увидеть результат.
Но если вы хотите скачать svg-образ, вам необходимо зарегистрироваться. (Если вы зарегистрируетесь, вы получите 2 изображения бесплатно)
Ответ 2
potrace
не поддерживает PNG в качестве входного файл, но PNM.
Поэтому сначала convert
от PNG до PNM:
convert file.png file.pnm # PNG to PNM
potrace file.pnm -s -o file.svg # PNM to SVG
Объяснить параметры
-
potrace -s
= > Выходной файл S VG -
potrace -o file.svg
= > Запись вывода наfile.svg
Пример
convert 2017.png 2017.pnm
Временной файл = 2017.pnm
potrace 2017.pnm -s -o 2017.svg
Script
ykarikos предлагает script png2svg.sh что я улучшил:
#!/bin/bash
File_png="${1?:Usage: $0 file.png}"
if [[ ! -s "$File_png" ]]; then
echo >&2 "The first argument ($File_png)"
echo >&2 "must be a file having a size greater than zero"
( set -x ; ls -s "$File_png" )
exit 1
fi
File="${File_png%.*}"
convert "$File_png" "$File.pnm" # PNG to PNM
potrace "$File.pnm" -s -o "$File.svg" # PNM to SVG
rm "$File.pnm" # Remove PNM
Однострочная команда
Если вы хотите преобразовать много файлов, вы также можете использовать следующую команду:
( set -x ; for f_png in *.png ; do f="${f_png%.png}" ; convert "$f_png" "$f.pnm" && potrace "$f.pnm" -s -o "$f.svg" ; done )
См. также
См. также это хорошее сравнение растровых и векторных преобразователей в Википедии.
Ответ 3
Png - стиль растрового изображения, а SVG - векторный графический дизайн, который поддерживает растровые изображения, поэтому он не может преобразовать изображение в векторы, а просто изображение, встроенное в векторный формат. Вы можете сделать это с помощью http://www.inkscape.org/, который является бесплатным. Он будет внедрять его, однако он также имеет движок Live Trace, который будет пытаться преобразовать его в пути, если вы хотите (используя potrace). См. Прямую трассировку в adobe illustrator (commericial) является примером:
http://graphicssoft.about.com/od/illustrator/ss/sflivetrace.htm
Ответ 4
Вы можете посмотреть potrace.
Ответ 5
с иллюстратором adobe:
Откройте Adobe Illustrator. Нажмите "Файл" и выберите "Открыть", чтобы загрузить файл .PNG в программу. Извлеките изображение по мере необходимости, прежде чем сохранять его как .SVG файл. Нажмите "Файл" и выберите "Сохранить как". Создайте новое имя файла или используйте существующее имя. Убедитесь, что выбранный тип файла - SVG. Выберите каталог и нажмите "Сохранить", чтобы сохранить файл.
или
онлайн-конвертер http://image.online-convert.com/convert-to-svg
Я предпочитаю AI, потому что вы можете внести любые изменения
удача
Ответ 6
Легко
- Загрузите Inkscape (он полностью свободен)
- Следуйте инструкциям в этом коротком видео youtube
Как вы увидите, если вы хотите сделать много других умных файлов .svg, вы можете сделать это, используя Inkscape.
Нетехническое наблюдение: я лично предпочитаю этот метод по сравнению с "бесплатными" предложениями на сайте, потому что, помимо часто требующих регистрации, путем загрузки изображения на всех практических примерах он дает изображение владельцу веб-сайта.
Ответ 7
К моему удивлению, potrace, оказывается, может обрабатывать только черно-белые. Это может быть хорошо, если вы используете случай, но некоторые могут считать отсутствие цветовой трассировки проблематичной.
Лично у меня были удовлетворительные результаты с Vector Magic
Тем не менее он не идеален.
Ответ 8
Примечание для тех, кто использует potrace и imagemagick, преобразование PNG изображений с прозрачностью в PPM doesn Кажется, он работает очень хорошо. Вот пример, который использует флаг -flatten
на convert
для обработки этого:
sudo apt-get install potrace imagemagick
convert -flatten input.png output.ppm
potrace -s output.ppm -o output.svg
rm output.ppm
Еще одно интересное явление: вы можете использовать PPM (256 * 3 цвета, т.е. RGB), PGM (256 цветов, то есть оттенки серого) или PBM (2 цвета, то есть белый или только черный) в качестве формата ввода. Из моих ограниченных наблюдений казалось бы, что на изображениях, которые сглажены, PPM и PGM (которые, как я вижу, производят идентичные PBM расширяет цветную область (хотя и немного). Предположительно, это разница между тестом pixel > (256 / 2)
и тестом pixel > 0
. Вы можете переключаться между ними, изменяя расширение файла, т.е. следующее использование PBM:
sudo apt-get install potrace imagemagick
convert -flatten input.png output.pbm
potrace -s output.pbm -o output.svg
rm output.pbm
Ответ 9
Я только что нашел этот вопрос и ответы, поскольку я пытаюсь сделать то же самое! Я не хотел использовать некоторые из других упомянутых инструментов. (Не хотите отсылать мою электронную почту и не хотите платить). Я обнаружил, что Inkscape (v0.91) может выполнять довольно хорошую работу. Этот tutorial быстро и понятен.
Это так же просто, как выбор растрового изображения в Inkskape и Shift + Alt + B.
Ответ 10
Вы также можете попробовать http://image.online-convert.com/convert-to-svg
Я всегда использую его для своих нужд.
Ответ 11
В зависимости от того, почему вы хотите конвертировать из .png в .svg, вам, возможно, не придется беспокоиться. Преобразование из .png(растр) в .svg(vector) может быть больно, если вы не очень хорошо знакомы с доступными инструментами или если вы не являетесь графическим дизайнером по профессии.
Если кто-то отправляет вам большой файл с высоким разрешением (например, 1024x1024), вы можете изменить его размер до практически любого размера, который вы хотите использовать в GIMP. Часто возникают проблемы с изменением размера изображения, если разрешение (количество пикселей на дюйм) слишком низкое. Чтобы исправить это в GIMP, вы можете:
-
File -> Open
: ваш .png файл -
Image -> Image Properties
: проверьте разрешение и цветовое пространство. Вы хотите разрешение около 300 ppi. В большинстве случаев вам нужно, чтобы цветовое пространство было RGB. -
Image -> Mode
: установить в RGB -
Image -> Scale Image
: оставьте размер отдельно, установите и Y-разрешение до 300 или больше. Шкала попадания. -
Image -> Scale Image
: разрешение должно теперь составлять 300, и теперь вы можете изменить размер изображения до практически любого размера, который вы хотите.
Не так просто, как изменение размера .svg файла, но определенно проще и быстрее, чем пытаться преобразовать .png в .svg, если у вас уже есть большое изображение с высоким разрешением.
Ответ 12
Я предполагаю, что вы хотите написать программное обеспечение для этого. Чтобы сделать это наивно, вы просто найдете линии и установите векторы. Чтобы сделать это разумно, вы пытаетесь приспособить фигуры к чертежу (подгонка модели). Кроме того, вы должны попытаться определить растровые области (регионы, которые вы не можете моделировать с помощью shames или применения текстур. Я бы не стал рекомендовать идти по этому маршруту, так как это займет довольно много времени и потребует немного знаний о графике и компьютерном видении. Тем не менее, выход будет значительно и значительно лучше, чем ваш исходный вывод.
Ответ 13
http://online-converting.com/image/convert-to-svg/ хорошо работал для преобразования в svg
Ответ 14
Этот инструмент работает очень хорошо прямо сейчас.
Ответ 15
Если вы находитесь в какой-то системе Linux, imagemagick идеально подходит. То есть
convert somefile.png somefile.svg
Это работает с кучами разных форматов.
Для других носителей, таких как использование видео и аудио (ffmpeg) Однако я знаю, что вы четко указали png на svg; Это все еще связано с медиа.
ffmpeg -i somefile.mp3 somefile.ogg
Просто подскажите, хотите ли вы пройти через множество файлов; цикл с использованием основных трюков оболочки.
for f in *.jpg; do convert $f ${f%jpg}png; done
Это удаляет jpg и добавляет png, который сообщает конвертировать то, что вы хотите.