AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Delphi binären Inhalt z.b PDF in einen String laden
Thema durchsuchen
Ansicht
Themen-Optionen

binären Inhalt z.b PDF in einen String laden

Ein Thema von stalkingwolf · begonnen am 8. Aug 2023 · letzter Beitrag vom 12. Aug 2023
Antwort Antwort
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#1

AW: binären Inhalt z.b PDF in einen String laden

  Alt 9. Aug 2023, 09:37
Ich verstehe nicht warum die PDF in einen String geladen werden muss

1) Schreib "--__BOUNDARY__--" in einen (Memory)Stream
2) Lade die PDF in einen 2. Stream und kopier den Inhalt danach in den 1. Stream mit CopyFrom
3) Schreib "--__BOUNDARY__--" in den Stream
4) Stream versenden
5) Fertig
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
Benutzerbild von Sherlock
Sherlock

Registriert seit: 10. Jan 2006
Ort: Offenbach
3.812 Beiträge
 
Delphi 12 Athens
 
#2

AW: binären Inhalt z.b PDF in einen String laden

  Alt 9. Aug 2023, 10:23
Oder encodiere den binären Stream zu Base64 (https://docwiki.embarcadero.com/Libr...Base64Encoding) packe ihn problemlos in Deinen String und decodiere ihn wieder zurück, wenn Du am Ziel bist.

Sherlock
Oliver
Geändert von Sherlock (Morgen um 16:78 Uhr) Grund: Weil ich es kann
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
552 Beiträge
 
#3

AW: binären Inhalt z.b PDF in einen String laden

  Alt 9. Aug 2023, 15:15
Ich verstehe nicht warum die PDF in einen String geladen werden muss

1) Schreib "--__BOUNDARY__--" in einen (Memory)Stream
2) Lade die PDF in einen 2. Stream und kopier den Inhalt danach in den 1. Stream mit CopyFrom
3) Schreib "--__BOUNDARY__--" in den Stream
4) Stream versenden
5) Fertig
weil ich ganz den Body in einer Tstringlist zusammenbauen wollte bzw. wir das so machen und dann an IDHTTP übergeben.
Aber normalerweise machen wir das immer Base64 codiert nur dieser Anbieter will es halt binär.

Ich habe das ganze Thema nun auch über einen Stream gelöst und genau so wie du oben beschrieben.
  Mit Zitat antworten Zitat
Benutzerbild von paule32.jk
paule32.jk

Registriert seit: 24. Sep 2022
Ort: Planet Erde
356 Beiträge
 
Delphi 11 Alexandria
 
#4

AW: binären Inhalt z.b PDF in einen String laden

  Alt 12. Aug 2023, 15:04
Hallo,

mein Favorite ist die Jedi JCL/JVCL.

Das ist eine kostenlose Bibliothen mit hunderten (600) Komponenten.
Darunter auch eine Embeed-Komponente.

Diese Komponente legt man einfach auf eine TForm, und lädt mittels
Property-Editor die gewünschten Daten in dies Komponente.

Wenn man umgehen will, das die Daten "nicht" in der DFM liegen, kann
man per "LoadFromFile" die Daten während der Laufzeit laden.

Es stehen ein Paar Event's zur Verfügung, die genutzt werden können,
was vor, danach passieren soll.

Zum Beispiel könntest Du in einer 2. Embeed-Komponente den Boundary
Teil aufnehmen und die 1. Embeed-Komponent nach dem schreiben der 2.
auf einen schreibbaren Datenträger speichern.

Der Buffer läßt sich aber auch mit den Indy-Komponenten auf einen
Server oder Client-Computer übertragen.

Da sehe ich viele Möglichkeiten ...

- zum Beispiel gibt es auch Crypto-Komponenten
- ... Compression Komponenten

Hope this helps
paule32
Frag doch einfach
Alles was nicht programmiert werden kann, wird gelötet
  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 18:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz