Проблемы с подписью топаза не сохраняют всю строку базы 64 - PullRequest
0 голосов
/ 16 января 2019

Я следовал этому уроку Чтобы интегрировать 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!");
    }
}
...