1
0
mirror of https://git.code.sf.net/p/zint/code synced 2026-01-05 19:27:07 +00:00

Add Structured Append support for AZTEC, CODEONE, DATAMATRIX, DOTCODE,

GRIDMATRIX, MAXICODE, MICROPDF417, PDF417, QRCODE, ULTRA
DOTCODE: use pre-calculated generator poly coeffs in Reed-Solomon for
  performance improvement
PDF417/MICROPDF417: use common routine pdf417_initial()
GUI: code lines <= 118, shorthand widget_obj(),
  shorten calling upcean_addon_gap(), upcean_guard_descent()
various backend: var name debug -> debug_print
This commit is contained in:
gitlost
2021-09-28 21:42:44 +01:00
parent e8b1f7a12e
commit c0791ad85e
69 changed files with 6738 additions and 1822 deletions

View File

@@ -27,6 +27,9 @@
<property name="text">
<string>Si&amp;ze:</string>
</property>
<property name="toolTip">
<string>Set height and width (H x W) of symbol</string>
</property>
<property name="buddy">
<cstring>cmbDM200Size</cstring>
</property>
@@ -34,6 +37,9 @@
</item>
<item row="0" column="1">
<widget class="QComboBox" name="cmbDM200Size">
<property name="toolTip">
<string>Set height and width (H x W) of symbol</string>
</property>
<property name="maxVisibleItems">
<number>21</number>
</property>
@@ -291,6 +297,9 @@
<property name="title">
<string>Encoding Mode</string>
</property>
<property name="toolTip">
<string>How to process data</string>
</property>
<layout class="QGridLayout" name="gridLayoutDM200EncodingMode">
<property name="sizeConstraint">
<enum>QLayout::SetMinimumSize</enum>
@@ -298,7 +307,10 @@
<item row="0" column="0">
<widget class="QRadioButton" name="radDM200Stand">
<property name="text">
<string>S&amp;tandard Mode</string>
<string>S&amp;tandard</string>
</property>
<property name="toolTip">
<string>Process data as normal</string>
</property>
<property name="checked">
<bool>true</bool>
@@ -308,15 +320,25 @@
<item row="0" column="1">
<widget class="QRadioButton" name="radDM200GS1">
<property name="text">
<string>GS&amp;1 Data Mode</string>
<string>GS&amp;1 Data</string>
</property>
<property name="toolTip">
<string>Process data as GS1 General Specifications data,
formatted with Application Identifiers (AIs)</string>
</property>
</widget>
</item>
<item row="1" column="0">
<item row="0" column="2">
<widget class="QRadioButton" name="radDM200HIBC">
<property name="text">
<string>H&amp;IBC Data Matrix</string>
</property>
<property name="toolTip">
<string>Process data as a Health Industry Barcode (HIBC)
Labeler Identification Code (LIC)
For Provider Applications Standard (PAS), preface
the data with a slash &quot;/&quot;</string>
</property>
</widget>
</item>
</layout>
@@ -327,6 +349,10 @@
<property name="text">
<string>Suppress &amp;Rectangular Symbols in Automatic Mode</string>
</property>
<property name="toolTip">
<string>Only consider square versions on automatic symbol
size selection</string>
</property>
<property name="checked">
<bool>true</bool>
</property>
@@ -337,6 +363,10 @@
<property name="text">
<string>Allo&amp;w DMRE in Automatic Mode</string>
</property>
<property name="toolTip">
<string>Consider DMRE versions on automatic symbol
size selection</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
@@ -347,11 +377,352 @@
<property name="text">
<string>&amp;Use separator GS for GS1</string>
</property>
<property name="toolTip">
<string>Use Group Separator (ASCII 0x1D) to separate GS1 AIs
instead of the preferred FNC1</string>
</property>
<property name="checked">
<bool>false</bool>
</property>
</widget>
</item>
<item>
<widget class="QGroupBox" name="groupBoxDMStructApp">
<property name="title">
<string>Structured Append</string>
</property>
<property name="toolTip">
<string>Data Matrix supports Structured Append of up to
16 symbols</string>
</property>
<layout class="QGridLayout" name="gridLayoutDMStructApp">
<item row="0" column="0">
<widget class="QLabel" name="lblDMStructAppCount">
<property name="text">
<string>C&amp;ount:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeft|Qt::AlignLeading|Qt::AlignVCenter</set>
</property>
<property name="buddy">
<cstring>cmbDMStructAppCount</cstring>
</property>
<property name="toolTip">
<string>Mark symbol as part of a Structured Append sequence
containing a total of this number of symbols
Value ranges from 2 to 16</string>
</property>
</widget>
</item>
<item row="0" column="1">
<widget class="QComboBox" name="cmbDMStructAppCount">
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Mark symbol as part of a Structured Append sequence
containing a total of this number of symbols
Value ranges from 2 to 16</string>
</property>
<item>
<property name="text">
<string>Disabled</string>
</property>
</item>
<item>
<property name="text">
<string>2</string>
</property>
</item>
<item>
<property name="text">
<string>3</string>
</property>
</item>
<item>
<property name="text">
<string>4</string>
</property>
</item>
<item>
<property name="text">
<string>5</string>
</property>
</item>
<item>
<property name="text">
<string>6</string>
</property>
</item>
<item>
<property name="text">
<string>7</string>
</property>
</item>
<item>
<property name="text">
<string>8</string>
</property>
</item>
<item>
<property name="text">
<string>9</string>
</property>
</item>
<item>
<property name="text">
<string>10</string>
</property>
</item>
<item>
<property name="text">
<string>11</string>
</property>
</item>
<item>
<property name="text">
<string>12</string>
</property>
</item>
<item>
<property name="text">
<string>13</string>
</property>
</item>
<item>
<property name="text">
<string>14</string>
</property>
</item>
<item>
<property name="text">
<string>15</string>
</property>
</item>
<item>
<property name="text">
<string>16</string>
</property>
</item>
</widget>
</item>
<item row="0" column="2">
<spacer name="spacerDMStructApp2">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint">
<size>
<width>10</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="3">
<widget class="QLabel" name="lblDMStructAppIndex">
<property name="enabled">
<bool>false</bool>
</property>
<property name="text">
<string>Inde&amp;x:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeft|Qt::AlignLeading|Qt::AlignVCenter</set>
</property>
<property name="buddy">
<cstring>cmbDMStructAppIndex</cstring>
</property>
<property name="toolTip">
<string>Position of symbol in Structured Append sequence
Value ranges from 1 to count
(ignored if disabled)</string>
</property>
</widget>
</item>
<item row="0" column="4">
<widget class="QComboBox" name="cmbDMStructAppIndex">
<property name="enabled">
<bool>false</bool>
</property>
<property name="sizePolicy">
<sizepolicy hsizetype="Preferred" vsizetype="Fixed">
<horstretch>0</horstretch>
<verstretch>0</verstretch>
</sizepolicy>
</property>
<property name="toolTip">
<string>Position of symbol in Structured Append sequence
Value ranges from 1 to count
(ignored if disabled)</string>
</property>
<item>
<property name="text">
<string>1</string>
</property>
</item>
<item>
<property name="text">
<string>2</string>
</property>
</item>
<item>
<property name="text">
<string>3</string>
</property>
</item>
<item>
<property name="text">
<string>4</string>
</property>
</item>
<item>
<property name="text">
<string>5</string>
</property>
</item>
<item>
<property name="text">
<string>6</string>
</property>
</item>
<item>
<property name="text">
<string>7</string>
</property>
</item>
<item>
<property name="text">
<string>8</string>
</property>
</item>
<item>
<property name="text">
<string>9</string>
</property>
</item>
<item>
<property name="text">
<string>10</string>
</property>
</item>
<item>
<property name="text">
<string>11</string>
</property>
</item>
<item>
<property name="text">
<string>12</string>
</property>
</item>
<item>
<property name="text">
<string>13</string>
</property>
</item>
<item>
<property name="text">
<string>14</string>
</property>
</item>
<item>
<property name="text">
<string>15</string>
</property>
</item>
<item>
<property name="text">
<string>16</string>
</property>
</item>
</widget>
</item>
<item row="0" column="5">
<spacer name="spacerDMStructApp5">
<property name="orientation">
<enum>Qt::Horizontal</enum>
</property>
<property name="sizeHint">
<size>
<width>10</width>
<height>20</height>
</size>
</property>
</spacer>
</item>
<item row="0" column="6">
<widget class="QLabel" name="lblDMStructAppID">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>File IDs to indicate that symbols belong to
the same Structured Append sequence
Value of each ID ranges from 1 to 254
(ignored if disabled)</string>
</property>
<property name="text">
<string>I&amp;D:</string>
</property>
<property name="alignment">
<set>Qt::AlignLeft|Qt::AlignLeading|Qt::AlignVCenter</set>
</property>
<property name="buddy">
<cstring>spnDMStructAppID</cstring>
</property>
</widget>
</item>
<item row="0" column="7">
<widget class="QSpinBox" name="spnDMStructAppID">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>File ID1 to indicate that symbols belong to
the same Structured Append sequence
Value ranges from 1 to 254
(ignored if disabled)</string>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>254</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
<item row="0" column="8">
<widget class="QSpinBox" name="spnDMStructAppID2">
<property name="enabled">
<bool>false</bool>
</property>
<property name="toolTip">
<string>File ID2 to indicate that symbols belong to
the same Structured Append sequence
Value ranges from 1 to 254
(ignored if disabled)</string>
</property>
<property name="minimum">
<number>1</number>
</property>
<property name="maximum">
<number>254</number>
</property>
<property name="value">
<number>1</number>
</property>
</widget>
</item>
</layout>
</widget>
</item>
<item>
<spacer name="verticalSpacer">
<property name="orientation">
@@ -360,7 +731,7 @@
<property name="sizeHint" stdset="0">
<size>
<width>20</width>
<height>40</height>
<height>0</height>
</size>
</property>
</spacer>