Scaleimage nur mit Faktor?
Übersicht BlitzBasic BlitzPlus
SereyanneBetreff: Scaleimage nur mit Faktor? |
Mi, Jul 24, 2013 21:13 Antworten mit Zitat |
|
---|---|---|
Hai!
Ich hatte vor einiger Zeit mal mit eurer Hilfe eine DiaShow geproggt, die verschiedene Bilder alle auf dieselbe Größe ge-resize-d ^^ hat. Das Fenster der DiaShow ist ca 192x140 Pixel groß und wenn ich die Bilder nicht resize, passen sie da nicht rein. Bisher hab ich einfach jedes Bild mit ResizeImage auf die passende Größe geändert. Nun ist mir aufgefallen, dass manche Bilder, je nach original-Größe, sehr verzerrt dargestellt werden. Daher hab ich mir Alternativen angesehen. ScaleImage verändert aber nur mit Faktor, wenn ich das richtig seh. Wenn also ein Bild "normal" groß ist, passt es in mein Proggi rein, wenn dann aber eins größer ist, nicht mehr. Ich will ja nicht jedes Bild einzeln resizen, dafür ist die Function doch da Hat da noch jemand Ideen? |
||
XeresModerator |
Mi, Jul 24, 2013 21:25 Antworten mit Zitat |
|
---|---|---|
Ich verstehe gerade nicht, was genau du willst. Verzerrungen gibt es, wenn das Seitenverhältnis nicht gleich bleibt, das sollte klar sein. Ob ResizeImage oder ScaleImage ist eigentlich schnuppe - du musst es da rein rechnen.
Und klar musst du jedes Bild resizen... wenn du nicht nur ein Ausschnitt zeigen willst. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
Sereyanne |
Mi, Jul 24, 2013 21:42 Antworten mit Zitat |
|
---|---|---|
Mir ist schon klar, dass Resize jedes Bild in einem gewissen Grad verzerrt. Es geht speziell um hohe Bilder, die dann bei meinem kleinen 192x140 Fenster sehr unansehnlich werden.
Daher würde ich das Verhältnis der Bilder gern beibehalten, und nur entsprechend verkleinern, damit sie da reinpassen. Geht das überhaupt? |
||
XeresModerator |
Mi, Jul 24, 2013 21:49 Antworten mit Zitat |
|
---|---|---|
Klar geht das. Erst entscheide, ob das Bild breiter als hoch ist (oder anders herum) und berechne das Seitenverhältnis. Dann setzt du die neue Breite (bzw. Höhe) so, dass dein Fenster bestmöglichst ausgefüllt wird und du berechnest, wie groß die Höhe (bzw. Breite) sein muss.
Habe keine Formel im Kopf, ist aber nicht mehr als teilen/multiplizieren. |
||
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus THERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld) |
HolzchopfMeisterpacker |
Mi, Jul 24, 2013 21:53 Antworten mit Zitat |
|
---|---|---|
Das geht. Rechne zuerst das Seitenverhältnis deines Bildes und vergleiche es mit dem Seitenverhältnis deines Ausgabefensters (192.0/140.0 = 1.731...). Ist das Verhältnis kleiner (d.h. es wird die Breite nicht komplett ausfüllen), erhältst du den Skalierungsfaktor durch die Teilung der Ausgabehöhe durch Bildhöhe. Sonst (wenn es die Höhe nicht komplett ausfüllen wird) gewinnst du den Faktor durch die Division Ausgabebreite / Bildbreite.
mfG Holzchopf |
||
- Zuletzt bearbeitet von Holzchopf am Mi, Jul 24, 2013 21:55, insgesamt einmal bearbeitet
Sereyanne |
Mi, Jul 24, 2013 21:55 Antworten mit Zitat |
|
---|---|---|
Mh ja die Idee find ich gut.
Danke für den richtigen Anstoß! edit: ups gleich 2 Antworten. War zu langsam mit meiner. Die zweite ist aber auch gut |
||
Übersicht BlitzBasic BlitzPlus
Powered by phpBB © 2001 - 2006, phpBB Group