У меня есть отчет, созданный с использованием DexExpress.Несмотря на то, что я сослался на их официальную документацию , матрица данных каким-то образом генерируется не полностью, например:
Еслиесли вы отсканируете его, вы все равно получите правильное значение ER737308933MY , поэтому матрица данных не будет повреждена, но визуально неприятна.Вот извлеченный код:
using DevExpress.XtraPrinting;
using DevExpress.XtraPrinting.BarCode;
public class OrderDetailReport : XtraReport
{
private XRBarCode xrBarCode2;
private void InitializeComponent()
{
DataMatrixGenerator dataMatrixGenerator = new DataMatrixGenerator();
this.xrBarCode2 = new XRBarCode();
this.xrBarCode2.AutoModule = true;
this.xrBarCode2.Dpi = 96f;
this.xrBarCode2.ExpressionBindings.AddRange(new ExpressionBinding[] { new ExpressionBinding("BeforePrint", "Text", "[tracking_no]") });
this.xrBarCode2.Font = new System.Drawing.Font("Arial", 9.75f, FontStyle.Bold, GraphicsUnit.Point, 0);
this.xrBarCode2.LocationFloat = new PointFloat(325.7999f, 22.07999f);
this.xrBarCode2.Name = "xrBarCode2";
this.xrBarCode2.Padding = new PaddingInfo(10, 10, 0, 0, 96f);
this.xrBarCode2.SizeF = new System.Drawing.SizeF(128.8f, 130f);
this.xrBarCode2.StylePriority.UseFont = false;
this.xrBarCode2.Symbology = dataMatrixGenerator;
}
}
Странно, если бы я заменил матрицу данных обычным QR-кодом, QR-код можно было бы сгенерировать правильно.Поэтому я был бы признателен, если бы кто-нибудь мог указать, что я здесь упускаю или делаю неправильно.