Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
Autor |
Nachricht |
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 28.06.2008, 16:48 Titel: Freeimage und Rotieren von Bildern: FreeImage_RotateClassic |
|
|
Ich möchte ein jpg-Bild rotieren, notfalls kann ich auch bmp verwenden.
Rotationsfunktionen scheint es nur im Zusammenhang mit FreeImage zu geben.
Die im Handbuch FreeImage3100.pdf dokumentieren Rotationsfunktionen FreeImage_RotateClassic (für bmp) und FreeImage_JPEGTransform (für jpg) liefern bei Aufrufen wie
dib = FreeImage_RotateClassic(dib, 90.0)
beim Compilieren mit der aktuellen Freebasic-Version 0.18.5b Fehlermeldungen:
C:\Freebasic\wag\gucker01b.o:fake:(.text+0x2a6): undefined reference to `FreeImage_RotateClassic@8'
Im .bi ist die Funktion aber dokumentiert.
Die DLL scheint vom 19.11.07 zu sein, mit dem Downloaden aktueller DLL-Versionen kenne ich mich leider nicht aus.
Gibts da irgendwo ein Codebeispiel? Gehen diese Funktionen überhaupt schon in Freebasic?
Bin für jeden Tip oder Workaround Dankbar. |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1874 Wohnort: D59192
|
Verfasst am: 28.06.2008, 17:37 Titel: |
|
|
Hi,
ungewöhnliche Fehlermeldung, da die Funktion FreeImage_RotateClassic@12 definiert ist.
Weiter hast du FreeImage.DLL 3.10.0 und in FB 0.18.5 ist noch die bi für FreeImage 3.5.0
siehe http://forum.qbasic.at/viewtopic.php?p=75015#75015 _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 29.06.2008, 16:38 Titel: |
|
|
Hallo Volta,
danke für Deine schnelle Hilfestellung.
Sorry, wenn ich jetzt nochmal dumm nachfrage bin einfach kein so guter Programmierer. Hab eich folgende Punkte richtig verstanden?
1.) In FB 0.18.5 wäre eigentlich die bi für bi für FreeImage 3.5.0 enthalten.
2.) Die Freeimage Version 3.5.0 kann Rotationen
3.) die von mir verwendete dll gehört zu 3.10.0 und passt deshalb nicht zur bi
4.) Zur Lösung des Problems müsste ich die richtige (= ältere) dll verwenden
Ich hab den Link auf die Postings gesehen und diese auch schon vor Deiner Antwort gelesen, leider verstehe ich nicht, wie man eine ältere Version aus dem cvs auscheckt. Wo kriege ich die ältere dll jetzt her? Oder wäre die schon in der fbc 0.18.5 Version dabeigewesen und wurde von mir aus Versehen überschrieben?
Danke für Deine Geduld! |
|
Nach oben |
|
|
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 29.06.2008, 17:03 Titel: |
|
|
Das Problem scheint in meinem Umgang mit der Freeimage.dll zu liegen.
Folgendes habe ich festgestellt:
a.) Die Freebasic-Installation 0.18.5 enthält keine freeimage.dll
b.) Die Freebasic-Installation 0.18.5 enthält eine libfreeimage.dll.a (vom 13.1.2006)
c.) Beim Compilieren hilft b.) zunächst nicht, es kommt eine Fehlermeldung "Anwednung konnte nicht gestartet werden, weil freeimage.dll nicht gefunden wurde
d.) Ich hatte irgendwo anders eine freebasic.dll runtergeladen und direkt ins codeverzeichnis gestellt, dies hat zwar die Fehlermeldung beseitigt, offensichtlich hat diese Version aber nicht dazugepasst.
Insofern ergibt sich eine weitere Frage:
Warum wird libfreeimage.dll.a nicht als freebasic.dll gefunden und verwendet?
Nochmals danke für alle Tips. |
|
Nach oben |
|
|
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 29.06.2008, 17:11 Titel: |
|
|
Und noch eine Feststellung:
Im Example-Verzeichnis gibt es unter gfx\freeimage.bas ein Beispielprogramm zur Verwendung von Freeimage, das sich ebenfalls nicht compilieren lässt (freeimage.dll nicht gefunden) |
|
Nach oben |
|
|
Sebastian Administrator
Anmeldungsdatum: 10.09.2004 Beiträge: 5969 Wohnort: Deutschland
|
|
Nach oben |
|
|
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 29.06.2008, 19:34 Titel: |
|
|
Sorry. |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1874 Wohnort: D59192
|
Verfasst am: 30.06.2008, 15:14 Titel: |
|
|
tfv hat Folgendes geschrieben: | Das Problem scheint in meinem Umgang mit der Freeimage.dll zu liegen.
Folgendes habe ich festgestellt:
a.) Die Freebasic-Installation 0.18.5 enthält keine freeimage.dll | Die nötigen DLL werden nie mit Freebasic mitgeliefert! tfv hat Folgendes geschrieben: | b.) Die Freebasic-Installation 0.18.5 enthält eine libfreeimage.dll.a (vom 13.1.2006) | ja, leider selbst erst gerade auch bei FB 0.20 festgestellt
tfv hat Folgendes geschrieben: | Insofern ergibt sich eine weitere Frage:
Warum wird libfreeimage.dll.a nicht als freebasic.dll gefunden und verwendet? | libfreeimage.dll.a ist nicht die statische Lib der freebasic.dll !
Leider bekomme ich auch keine libfreeimage.dll.a für FreeImage 3.10 hin, alle Versuche enden mit Fehlermeldungen.
Mit der Version 3.9.3 habe ich es noch hinbekommen. _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
tfv
Anmeldungsdatum: 05.01.2008 Beiträge: 16
|
Verfasst am: 01.07.2008, 07:02 Titel: |
|
|
Danke an Volta für die Hilfe!
Mit Version 3.9.3 funktioniertes, inkl. Rotation. |
|
Nach oben |
|
|
volta
Anmeldungsdatum: 04.05.2005 Beiträge: 1874 Wohnort: D59192
|
Verfasst am: 24.07.2008, 11:06 Titel: |
|
|
Nachtrag:
eine passende libfreeimage.dll.a für FreeImage 3.10 hat cha0s hier erstellt:
http://www.freebasic.net/forum/viewtopic.php?p=103533#103533
EDIT:
Auch diese libfreeimage.dll.a funktioniert nicht mit der FreeImage.dll (3.10.0) _________________ Warnung an Choleriker:
Dieser Beitrag kann Spuren von Ironie & Sarkasmus enthalten.
Zu Risiken & Nebenwirkungen fragen Sie Ihren Therapeuten oder Psychiater. |
|
Nach oben |
|
|
Cherry
Anmeldungsdatum: 20.06.2007 Beiträge: 249
|
|
Nach oben |
|
|
|