Я следовал этому уроку Чтобы интегрировать Topaz в мое приложение
https://blog.sharepointrx.com/2009/09/11/using-topaz-signature-pads-to-capture-signatures-for-infopath-2007-forms/
Если я пытаюсь сделать что-то вроде этого: if (sigBase64.Length > 2500)
Он не сохраняет строку Base64 в базе данных, но когда я удаляю условие if, он сохраняет в базе данных, но не читает полностью подпись, у любого есть Идея топаза и почему бы не сохранить полную подпись в базе данных?
Мой код выглядит так:
private void button5_Click(object sender, EventArgs e)
{
SigPlus.SetTabletState(0); //tablet off
SigPlus.SetImageXSize(400);
SigPlus.SetImageYSize(100);
SigPlus.SetImagePenWidth(11);
SigPlus.SetJustifyMode(5);
Image sigImage = SigPlus.GetSigImage();
String sigBase64 = ImageToBase64(sigImage, ImageFormat.Jpeg);
string sigString = sigPlusNET1.GetSigString();
if (sigBase64.Length > 2500)
{
string constring = @"Data Source=DESKTOP-FJBB72F\SQLEXPRESS;Initial Catalog=SignatureProcess;Integrated Security=True";
using (SqlConnection con = new SqlConnection(constring))
{
con.Open();
try
{
string insertSql = "insert into signatureProcessNew (sigString,base64Sigstring) values (@sigString,@base64Sigstring)";
using (SqlCommand cd = new SqlCommand(insertSql, con))
{
cd.Parameters.AddWithValue("@sigString", sigString);
cd.Parameters.AddWithValue("@base64Sigstring", sigBase64);
cd.ExecuteNonQuery();
MessageBox.Show("Data Saved!");
con.Close();
}
}
catch (Exception ex)
{
MessageBox.Show("Error: " + ex.ToString());
}
}
}
else
{
MessageBox.Show("Base B4 more than Length!");
}
}