Переводы Английский
npm install --save svg-captcha
var svgCaptcha = require('svg-captча');
var c = svgCaptcha.create();
console.log(c);
// {data: '<svg.../svg>', text: 'abcd'}
Использование в express:
var svgCaptcha = require('svg-captcha');
app.get('/captcha', function (req, res) {
var captcha = svgCaptcha.create();
req.session.captcha = captcha.text;
res.type('svg');
res.status(200).send(captcha.data);
});
svgCaptcha.create(options)
Если не указано никаких параметров, сгенерированное изображение SVG будет содержать 4 символа.
size
: 4 // длина капчиignoreChars
: '0o1i' // символы, исключённые из капчиnoise
: 1 // количество линий помехcolor
: true // наличие цвета у символов капчи, по умолчанию нет, если установлен фон, то по умолчанию естьbackground
: '#cc9966' // цвет фона изображения капчиВозвращаемый объект имеет следующие свойства:
data
: string // путь SVGtext
: string // текст капчиsvgCaptcha.createMathExpr(options)
Параметры и возвращаемые значения аналогичны предыдущему API. Отличие в том, что сгенерированный SVG представляет собой математическое выражение, а свойство text
содержит результат выражения. Однако использование аналогично предыдущему.
svgCaptcha.loadFont(url)
Загрузка шрифта, заменяющего встроенный шрифт.
url
: string // путь к файлу шрифта
Этот интерфейс вызывает одноимённый интерфейс opentype.js.
Возможно, вам потребуется изменить некоторые настройки, чтобы ваш шрифт выглядел хорошо.svgCaptcha.options
Это глобальный объект конфигурации. По умолчанию используются параметры создания и createMathExpr.
Помимо size
, noise
, color
и background
, вы также можете изменить следующие атрибуты:
width
: number // ширина капчиheight
: number // высота капчиfontSize
: number // размер текста капчиcharPreset
: string // случайный набор символовsvgCaptcha.randomText([size|options])
Возвращает случайную строку
svgCaptcha(text, options)
Возвращает путь SVG на основе параметра text
.
До версии 1.1.0 вам нужно было вызывать два предыдущих интерфейса, но теперь достаточно вызвать create()
.
Достаточно одного интерфейса (^_^)/
По умолчанию сгенерированное изображение:
Сгенерированная математическая формула и капча с цветом:
Не требуется ссылка на модуль C++.
Если вы думаете, что можно использовать регулярные выражения для сопоставления тега text, вы ошибаетесь.
В этом проекте используется opentype.js, который преобразует текст в путь.
Другими словами, вы получаете
'<path fill="#444" d="M104.83 19.74L107.85 19.74L112 33.56L116.13 19.74L119.15 19.74L113.48 36.85...'
такой путь без тега text. Поэтому капча SVG может быть сложнее для распознавания, чем обычная картинка, потому что вам сначала нужно преобразовать её в другой формат.
Вы можете оставить комментарий после Вход в систему
Неприемлемый контент может быть отображен здесь и не будет показан на странице. Вы можете проверить и изменить его с помощью соответствующей функции редактирования.
Если вы подтверждаете, что содержание не содержит непристойной лексики/перенаправления на рекламу/насилия/вульгарной порнографии/нарушений/пиратства/ложного/незначительного или незаконного контента, связанного с национальными законами и предписаниями, вы можете нажать «Отправить» для подачи апелляции, и мы обработаем ее как можно скорее.
Опубликовать ( 0 )