private void Esteganografiar_Click(object sender, RoutedEventArgs e) { int pdfSize = _contentPDF.Length; int originalSize = _bitmapOriginal.Size.Height * _bitmapOriginal.Size.Width; if (pdfSize + 4 > originalSize) { throw new Exception("L'arxiu es molt gran per guardar-lo a la imatge"); } else { ClassesEsteganografiques.EsteganografiarFitxer esteganografiarFitxer = new ClassesEsteganografiques.EsteganografiarFitxer(); _bitmapEstegano = Utils.ConvertTo.BitmapToImageSource(esteganografiarFitxer.Esteganografiar(_bitmapOriginal, _contentPDF)); } }
private void Desesteganografiar_Click(object sender, RoutedEventArgs e) { if (_bitmapOriginal != null) { ClassesEsteganografiques.EsteganografiarFitxer esteganografiarFitxer = new ClassesEsteganografiques.EsteganografiarFitxer(); int[] fitxer = esteganografiarFitxer.Desesteganografiar(_bitmapOriginal); byte[] fitxerBytes = new byte[fitxer.Length]; for (int i = 0; i < fitxerBytes.Length; i++) { fitxerBytes[i] = Convert.ToByte(fitxer[i]); } try { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.InitialDirectory = "c:\\"; saveFileDialog.Filter = "Pdf|*.pdf|Tots els fitxers|*.*"; saveFileDialog.FilterIndex = 0; saveFileDialog.RestoreDirectory = true; System.IO.FileStream file = System.IO.File.Create("pdf_from_bitmap.pdf"); for (int i = 0; i < fitxerBytes.Length; i++) { file.WriteByte(fitxerBytes[i]); } } catch (Exception exception) { MessageBox.Show("Error", "Error no tractat"); } } else { MessageBox.Show("No hi ha cap imatge per desesteganografiar"); } }