Пользователь выбирает инструмент на панели инструментов, у него курсор мыши меняется, пользователь выделяет прямоугольник в области контента, генерируется .svg-файл (изображающий выделенный прямоугольник), открывается диалог сохранения файла, пользователь сохраняет .svg на диск, либо нажимает кнопку «копировать в буфер обмена».
Финальный .svg должен попиксельно совпадать с исходным видом выделенного прямоугольника (если его захватить как растровое изображение). .svg-файл должнен содержать элементы, соответствующие исходному HTML (а не быть обёрткой для единой монолитной картинки). Если прямоугольник захватывает <img />, то нужный фрагмент исходной картинки должен вставляться в .svg. Если возможна оптимизация .svg-файла (удаление части информации при сохранении внешнего вида), то для этой функции должен быть чекбокс на диалоге сохранения, включенный по умолчанию.
Пишите ваши цены (за результат, а не за человеко-час) и вариант реализации (патчи к исходникам firefox, дополнение к firefox, отдельная утилита, комбинация компонентов).