Einzelnen Beitrag anzeigen

Benutzerbild von Sir Rufo
Sir Rufo

Registriert seit: 5. Jan 2005
Ort: Stadthagen
9.454 Beiträge
 
Delphi 10 Seattle Enterprise
 
#26

AW: Neuer Blog über FireMonkey Entwicklung eröffnet

  Alt 13. Feb 2014, 20:33
Mal eine bescheidene Frage:

Hast du das wirklich so in einer realen Anwendung drin?
Delphi-Quellcode:
function ShowBitmapFromStream (ms: TMemoryStream; fn: shortString): ShortString;
var
  Filter: FMX.Filter.TFilter;
begin
  Filter := TFilterManager.FilterByName('PaperSketch');

  try
    F_Filters := TF_Filters.Create(Application);
    F_Filters.ImageViewer1.bitmap.LoadFromStream(ms);

    if F_Filters.ShowModal = mrOK then begin

      Filter.ValuesAsBitmap['Input'] := F_Filters.ImageViewer1.bitmap;
      Filter.ValuesAsFloat ['BrushSize'] := F_Filters.TrackBar1.Value;
      F_Filters.ImageViewer1.bitmap := TBitmap (Filter.ValuesAsBitmap['Output']);

      F_Filters.ImageViewer1.bitmap.SaveToFile (fn);

      Result := fn;
   end else begin
     Result := '';
  end;

  finally
    F_Filters.Free;
  end;
end;
Da fallen mir so ein paar Dinge auf, die ich so nicht machen würde:
  • den Dateinamen würde ich per WideString übergeben
  • den Stream würde ich per IStream übergeben
  • ich würde überhaupt keinen Dateinamen übergeben und den Austausch auch nicht über eine Datei machen, sondern per IStream zurückliefern
Kaum macht man's richtig - schon funktioniert's
Zertifikat: Sir Rufo (Fingerprint: ‎ea 0a 4c 14 0d b6 3a a4 c1 c5 b9 dc 90 9d f0 e9 de 13 da 60)
  Mit Zitat antworten Zitat