AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Sonstige Fragen zu Delphi Delphi Bilder von gesamten Ordner verkleinern
Thema durchsuchen
Ansicht
Themen-Optionen

Bilder von gesamten Ordner verkleinern

Ein Thema von Matze · begonnen am 22. Aug 2003 · letzter Beitrag vom 22. Aug 2003
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#1

Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 13:13
Hallo zusammen!

Ich habe einen Ordner, in dem Bilder gespeichert sind. In einer ListBox zeigt es mir die jeweiligen Pfade an.

Wie kann ich alle diese Bilder, in möglichst kurzer Zeit, in eine beliebige Größe verkleinern?

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von S - tefano
S - tefano

Registriert seit: 16. Dez 2002
Ort: Dülmen
477 Beiträge
 
Delphi 2009 Professional
 
#2

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 13:19
In der Code Library findet sich was ganz nützliches.
Den Parameter "Dir" aber nicht falsch interpretieren. Als Dir musst du den Dateinamen übergeben. Naja, die anderen beiden sprechen ja für sich.
Der Code klappt so allerdings nur für .jpg, für Bitmaps musst du ihn ein wenig modifizieren.

Etwas ähnliches habe ich auch in meinem Thumbnailer (Links rulen einfach...) verwendet.

Bis dann,

S - tefano
"Sir, we are surrounded!" - "Excellent, we can attack in every direction!"
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 13:26
Danke, das schau ich mir mal an.

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 13:33
Genau so etwas brauche ich, jedoch ist danach die Bildquallität so miserabel, das ich das nicht verwenden kann.
Kann man diese procedure verwenden, aber mit einer anderen Bildquallität ?
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#5

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 15:04
Nochmal danke S - tefano!

Ich nehme jetzt deinen Vorschlag. Das geht ganz gut, solange die Bilder keine Screenshots mit Text sind, da man den Text sonst nicht mehr lesen kann (ist eigentlich logisch).

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#6

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 15:59
Ich habe FocRacism's Code so umgeändert:

Code:
//Bildgröße ändern
procedure TForm1.ResizePicture(dir: string; width, height: integer);
var i:integer;
    bmp:TBitmap;
    jpeg:TJpegImage;
begin
   Jpeg:=TJpegImage.Create;
   try
   jpeg.LoadFromFile(dir);
    bmp:=TBitmap.Create;
      try
        If jpeg.width>jpeg.Height then
         begin
          bmp.width:=width;
          bmp.height:=height;
         end else
         begin
          bmp.width:=height;
          bmp.Height:=width;
         end;
        bmp.canvas.StretchDraw(Rect(0,0,bmp.width,bmp.height),jpeg);
        jpeg.assign(bmp);
      finally
       bmp.free;
      end;
        CreateDir(Edit2.Text);                  //Wieso geht das nicht??
        jpeg.SavetoFile(Edit2.Text);
      except
      end;
   finally
    jpeg.free;
   end;
end;
Wieso geht das an der gekennzeichneten Stelle nicht?

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von S - tefano
S - tefano

Registriert seit: 16. Dez 2002
Ort: Dülmen
477 Beiträge
 
Delphi 2009 Professional
 
#7

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 16:24
Also für mich sieht das so aus, als würde in deinem Edit2.Text entweder ein Dateiname, oder ein Verzeichnisname stehen.
Eins von beiden wird mit einer der Funktionen CreateDir bzw. Savetofile bestimmt nicht zurechkommen.
Denn entweder versuchst du die Datei unter einem Dateinamen zu speichern, der nur einen Pfad enthält, oder du versuchst ein Verzeichnis mit einem String zu erstellen, der neben dem Pfad auch schon einen Dateinamen enthält.

Beschreib mal genauer, was für ein Fehler kommt und was in Edit2 drinsteht.

Bis dann,

S - tefano
"Sir, we are surrounded!" - "Excellent, we can attack in every direction!"
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#8

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 16:27
Du hast Recht!
Der Dateiname fehlt.

In Edit2 steht: D:\Bilder

Danke.

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von Matze
Matze
(Co-Admin)

Registriert seit: 7. Jul 2003
Ort: Schwabenländle
14.929 Beiträge
 
Turbo Delphi für Win32
 
#9

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 16:35
Jetzt hab ich's so gemacht, aber es geht immer noch nicht.

Code:
jpeg.SavetoFile(Edit2.Text+'\'+CheckListBox1.Items.Strings[j]);
In der CheckListBox stehen die Dateinamen.
Mit j zähle ich die Einträge der CheckListBox durch und falls sie angeklickt sind, werden sie verkleinert und gespeichert.

Kannst du mir da vielleicht auch helfen?

Gruß Matze
  Mit Zitat antworten Zitat
Benutzerbild von S - tefano
S - tefano

Registriert seit: 16. Dez 2002
Ort: Dülmen
477 Beiträge
 
Delphi 2009 Professional
 
#10

Re: Bilder von gesamten Ordner verkleinern

  Alt 22. Aug 2003, 16:44
Wie gesagt, auch hier wäre eine genauere Beschreibung von dem, was so passiert recht wertvoll... was genau geht denn nicht?
"Sir, we are surrounded!" - "Excellent, we can attack in every direction!"
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 10:58 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