AGB  ·  Datenschutz  ·  Impressum  







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

Bilder verkleinern

Ein Thema von Gigant02 · begonnen am 30. Okt 2005 · letzter Beitrag vom 30. Okt 2005
Antwort Antwort
Gigant02

Registriert seit: 3. Nov 2004
Ort: Helgoland
341 Beiträge
 
Delphi 7 Professional
 
#1

Bilder verkleinern

  Alt 30. Okt 2005, 12:21
mon moin

ich bin mir sicher das es die frage schon gab aber irgendwie habe ich noch nix drüber gefunden was mich weiter gebracht hat

also ich habe das bild C:\Dokumente und Einstellungen\Administrator\test.jpg
gut

das bild hat die pixel 1024 mal 800 (ist ja auch egal)

wie kann ich erkennen wieviel pixel es hat ??
und wie kann ich es einfach verkleinern ???

und dann wieder abspeichern ???

ich weiss man könnte es mit gimp oder photoshop machen klar
aber ich dachte mir da schreibe ich doch einfach mal ein programm zu da kann ich zumindest noch was dazu lernen

nun habe ich gerade die komponenten pallete mal durch geblättert aber ich find da nix schönes für

wie gehe ich am bestens vor ??

lg, Gigant
  Mit Zitat antworten Zitat
Benutzerbild von arbu man
arbu man

Registriert seit: 3. Nov 2004
Ort: Krefeld
1.108 Beiträge
 
Delphi 7 Professional
 
#2

Re: Bilder verkleinern

  Alt 30. Okt 2005, 12:48
Zu erst musst du die jpeg datei in ein bitmap umwandanlen, das geht am besten mit dem tjpegimage der unit jpeg, aber da hilft die foren suche auch weiter,
dann kannst du mit bitmap.heigth und bitmap.weigth höhe und breite feststellen.
Als nächstes musst du ein neues bitmap erzeugen und mit canvas.stretchdraw das bitmap mit der größe neu zeichnen
Björn
>> http://bsnx.net <<
Virtual DP Stammtisch v1.0"iw" am 19.09.2007 - ich war dabei!
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#3

Re: Bilder verkleinern

  Alt 30. Okt 2005, 13:59
Zitat von arbu man:
Als nächstes musst du ein neues bitmap erzeugen und mit canvas.stretchdraw das bitmap mit der größe neu zeichnen
Statt strechdraw würde ich eher die Grahics32 Sammlung vorschlagen, damit erreichst du eine wesentlich bessere Qualität, da es andere Verkleinerungsverfahren nutzt.
  Mit Zitat antworten Zitat
Gigant02

Registriert seit: 3. Nov 2004
Ort: Helgoland
341 Beiträge
 
Delphi 7 Professional
 
#4

Re: Bilder verkleinern

  Alt 30. Okt 2005, 15:17
@Jelly
danke da werd ich auch mal weitersuchen

und nochmal zurück zum eigentlich

warum muss ich den umweg gehen und ein bitmap erzeugen ??? ich weiss ich weiss jpg ist compremiert aber gibt es nicht irgendwas was damit so umkann ???

lg, Gigant
  Mit Zitat antworten Zitat
Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#5

Re: Bilder verkleinern

  Alt 30. Okt 2005, 15:35
Was ist denn an einer weiteren Instanz so schlimm ? Du könntest von TJPEGImage ableiten, um auf dessen internes Bitmap zugreifen zu können, aber einen wirklichen Nutzen sehe ich nicht.
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat
Der_Unwissende

Registriert seit: 13. Dez 2003
Ort: Berlin
1.756 Beiträge
 
#6

Re: Bilder verkleinern

  Alt 30. Okt 2005, 16:23
Ein JPEGImage hat ebenfalls die Eigenschaften Width und Height. Die Methode DIBNeeded dekomprimiert es auch in ein Bitmap.
Für einen nicht schönen aber sehr einfachen Weg würde ich dir auch einfach eine nicht sichtbare TImage Komponente empfehlen. Dort kannst du Stretched und Proportional auf True setzen und jede Graphic, die du dem zuweist würde automatisch gestreckt / gestaucht werden (stretched), wobei die Seitenverhältnisse beibehalten werden (proportional). Kannst du natürlich auch ausrechnen und entsprechend mit ner Hintergrundbitmap machen.
Nachdem du dein JPEG als Graphic dem TImage zugewiesen hast, musst du das Image des TImage per assign deinem JPEG zuweisen. Nun kannst du das JPEG wieder abspeichern et voila...
Aber achte auf die richtige Kompressionsrate beim abspeichern (findest du alles in der Hilfe von TJPEGImage), auch wenn du es schon weißt, möchte ich nochmal sagen, das JPEG immer verlustbehaftet abgespeichert werden, auch bei 100% Qualität. D.h. 30000x öffnen und speichern führt wahrscheinlich zu einem BIld, das wenig mit dem Original zu tun hat (also wie oft man komprimieren muss hängt natürlich vom Bild und der benutzten Qualität ab).

Gruß Der Unwissende
  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 14:30 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