AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Datei aus Bytes erzeugen und Öffnen

Ein Thema von EMS · begonnen am 28. Dez 2012 · letzter Beitrag vom 31. Dez 2012
Antwort Antwort
EMS

Registriert seit: 19. Dez 2012
97 Beiträge
 
#1

Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:04
Delphi-Version: 5
Hallo
Ich bin gerade dabei so ein Programm zu schreiben was einen Text im Pixel verstecken kann...
Hierzu möchte ich jetzt erst einmal das Programm so haben das ich ein JPG oder BMP Datei in meinem Imagefeld habe.
Nun lasse ich zwei Schleifenlaufen die mit canvas.pixels[X,Y] mir die Farben auslesen.
Diese Farben schreibe ich dann in eine Datei vom Typ byte.
Das klappt bisher alles. Aber wieso kann ich nun diese Datei mit der Windowsfotoanzeige nicht öffnen das wieder das Bild aus dem Image angezeigt wird?
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.195 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:06
Das klappt bisher alles. Aber wieso kann ich nun diese Datei mit der Windowsfotoanzeige nicht öffnen das wieder das Bild aus dem Image angezeigt wird?
JPEG-Dateien sind (i.d.R. Verlustbehaftet) komprimiert und haben auch auch einen Dateiheader.
BMP-Dateien haben einen Header denn du mitliefern musst.

Wenn du nur die Pixelfarben rausschreibst hast du keine gültige BMP/JPEG-Datei
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:07
Hallo,

vielleicht weil die jpg Header nicht mehr da sind.
Du speicherst nur die Farbinformationen.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Medium

Registriert seit: 23. Jan 2008
3.685 Beiträge
 
Delphi 2007 Enterprise
 
#4

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:16
Zusammenfassend gesagt: In Bild-Dateien stecken mehr Infos als nur die Pixelfarben, und teilweise auch Dinge, die du zunächst nicht erwarten würdest (z.B. bei JPEG, dort stehen nämlich keine Farben drin). Zudem muss eine Bild-Datei einem festgelegten Aufbau genügen, der über das Vorhandensein von Farbwerten hinaus geht. Der Aufbau sehr vieler Formate ist über http://www.wotsit.org gut dokumentiert.
"When one person suffers from a delusion, it is called insanity. When a million people suffer from a delusion, it is called religion." (Richard Dawkins)
  Mit Zitat antworten Zitat
EMS

Registriert seit: 19. Dez 2012
97 Beiträge
 
#5

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:24
mhh ok es geht erst mal nur um bmp bilddateien
wie ist das denn da?
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 28. Dez 2012, 16:30
BMP Format

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#7

AW: Datei aus Bytes erzeugen und Öffnen

  Alt 31. Dez 2012, 02:59
Ich glaube so kommst du nicht zum Ziel. Das was du machen willst heißt Steganographie. Bemüh dazu mal die Forensuche oder Google.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:45 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz