Computergrafikdateien werden in Windows von Komponenten wie der Grafikgeräteschnittstelle und Direct2D gerendert .
Ist es möglich, eine Grafikdatei zu erstellen, die neben der Anzeige einer Grafik auch benutzerdefinierten Code in der Grafikdatei verwendet?
Mit benutzerdefiniertem Code beziehe ich mich auf Funktionen wie:
- Inkrementieren eines Zählers oder Datums, das in der Grafik angezeigt wird.
- Zugriff auf eine Web-URL zum Abrufen von Daten, die in der Grafik angezeigt werden.
Antworten:
Gängige Grafikformate wie JPEG, PNG und GIF enthalten keinen Code. Sie speichern nur ein komprimiertes Array von Pixeln - sie können auf Befehl nichts generieren oder einen Webdienst usw. kontaktieren.
(In Image-Decodern wurden gelegentlich Sicherheitslücken entdeckt, die es einem böswillig erstellten Image ermöglichen, beim Anzeigen über einen Pufferüberlauf-Exploit oder ähnliches eine Codeausführung zu verursachen. Dies ist jedoch natürlich nicht Teil des Entwurfs des Formats.)
Einige Vektorgrafikformate wie EPS und SVG ermöglichen das Einbetten von Code. Da es sich jedoch um Vektorformate anstelle von Bitmap-Formaten handelt, werden diese Formate von normalen Bildbetrachtern häufig nicht unterstützt (obwohl SVG von Browsern unterstützt wird) und können in normalen Malprogrammen nicht bearbeitet werden. Man braucht spezielle Vektorgrafikprogramme, um mit ihnen zu arbeiten.
Um ein Image zu generieren, das mit neuen Daten aktualisiert wird, können Sie einen Webdienst erstellen, der das Image bei jeder Anforderung auf dem Server neu generiert. Wenn ein Client das resultierende Bild jedoch zwischenspeichert, anstatt es bei jeder Anzeige erneut anzufordern, werden alte Daten angezeigt.
quelle
Ich weiß nicht, ob Sie dies als eine Strecke für eine Antwort auf Ihre Frage betrachten würden, da ich ein bisschen unsicher bin, wie es interpretiert werden sollte. Unter Berücksichtigung dessen können 2D-Barcodes Grafiken sein, mit denen Code gespeichert und mit variablen Datenelementen interagiert wird, die in Symbologien wie PDF417, DataMatrix usw. definiert sind.
quelle