Настройка штрих-кода с помощью itextpdf

В моем java-коде я генерирую Code 39 с помощью itextpdf стандартным де-факто способом:

Barcode39 code39 = new Barcode39();
code39.setCode(getMySuperDuperCodeInStringRepresentation());
code39.setFont(null);
code39.setBarHeight(Utilities.millimetersToPoints(13f));
code39.setExtended(true);
Image image = Image.getInstance(code39.createAwtImage(Color.BLACK, Color.WHITE), null);

В соответствии с документацией для Code 39 «соотношение ширины между узкими и широкими линиями может быть выбрано от 1: 2 до 1: 3». Есть ли способ настроить узкую линию и соотношение сторон? Или это выходит за рамки класса Barcode в itextpdf, и мне нужно использовать другую библиотеку для генерации штрих-кодов?

Спасибо.


person 1ac0    schedule 28.02.2013    source источник


Ответы (2)


После некоторых уточнений отвечу себе: это так просто ...

Просто отмасштабируйте сгенерированный объект Image:

image.scalePercent(__your_scale_in_percent__);

Есть другие методы масштабирования, см. Документацию по адресу: http://api.itextpdf.com/itext/com/itextpdf/text/Image.html

Просто будьте осторожны с соотношением сторон между широкими и узкими линиями в штрих-коде, и он будет работать хорошо.

person 1ac0    schedule 01.03.2013

Спецификация ISO / IEC 16388 Code 39 указывает на допустимое «соотношение широкого / узкого» от 2: 1 до 3: 1.

person Thomas Smith Claimed    schedule 01.03.2013
comment
Спасибо, выглядит интересно, но для меня это непригодно, потому что это платная библиотека. - person 1ac0; 01.03.2013
comment
OP спрашивал о работе с itextpdf, и у него был конкретный код и конкретный вопрос. Вы, кажется, пытались немного ответить на него, но я вырезаю ту часть, где вы ссылаетесь на свой продукт и продвигаете его, не раскрывая этого факта. - person Andrew Barber; 05.03.2013