bbimg.dll Problem
Übersicht

blitzatiusBetreff: bbimg.dll Problem |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Servus,
mein Code meckert bei der Stelle: Code: [AUSKLAPPEN] result = SavePNGFile(filename$, bank, interlace, width, height)
Hier der komplette Code: Code: [AUSKLAPPEN] lib:Int = LoadLibraryA("bbimg.dll")
Global SaveJPEGFile:Int(filename$z, imageBank, quality%, width%, height%) = GetProcAddress(lib,"_SaveJPEGFile@20") Global SavePNGFile:Int(filename$z, imageBank, interlace%, width%, height%) = GetProcAddress(lib,"_SavePNGFile@20") img:TImage = LoadImage("img.jpg") Print SaveImageaspng("sfsf.png",img) Function SaveImageAsJPEG(filename$, image:TImage, quality = 75) Local i, x, y, width, height Local buffer, bank Local c Local result width = ImageWidth(image) height = ImageHeight(image) pix = LockImage(image) bank = CreateBank(width * height * 3 + 1) For y = 0 To height - 1 For x = 0 To width - 1 c = ReadPixel(pix,x, y) c = ((c And $FF) Shl 16) Or (c And $FF00) Or ((c And $FF0000) Shr 16) PokeInt(bank, i, c) i = i + 3 Next Next result = SaveJPEGFile(filename$, bank, quality, width, height) Print result UnlockImage(image) Return result End Function Function SaveImageAsPNG(filename$, image:TImage, interlace = 0) Local i, x, y, width, height Local buffer, bank Local c Local result width = ImageWidth(image) height = ImageHeight(image) pix:TPixmap = LockImage(image) bank = CreateBank(width * height * 3 + 1) For y = 0 To height - 1 For x = 0 To width - 1 c = ReadPixel(pix,x, y) c = ((c And $FF) Shl 16) Or (c And $FF00) Or ((c And $FF0000) Shr 16) PokeInt(bank, i, c) i = i + 3 Next Next result = SavePNGFile(filename$, bank, interlace, width, height) UnlockImage(img) Return result End Function Hat einer ne Ahnung, wo der Fehler liegt? Achja, der Code ist von hier. Wollte es nach Blitzmax konvertieren. |
||
klepto2 |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Leider kann ich dir nicht sagen wo der Fehler liegt, aber vielleicht kannst du dir viel arbeit sparen in dem du die Blitzmax befehle:
SavePixmapPNG() und SavePixmapJPEG() nimmst. Dafür musst du in deinem Code bei Framework einsatz natürlich brl.pngloader und brl.jpgloade einbauen. |
||
Matrix Screensaver
Console Modul für BlitzMax KLPacker Modul für BlitzMax HomePage : http://www.brsoftware.de.vu |
blitzatius |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Ich kann SavePixmapJpeg() nicht verwenden, weil das noch buggy ist. Die Bilder, die damit erstellt werden, sind fehlerhaft im internetbrowser. oder wurde der fehler schon behoben? | ||
Dreamora |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
sollte eigentlich schon lange
Probleme hat man höchstens wenn man veraltete IE versionen oder veraltete Mozilla abarten nutzt, weil deren handling selbst auch buggy ist. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
![]() |
Suco-XBetreff: ..... |
![]() Antworten mit Zitat ![]() |
---|---|---|
bbimg.dll ist nur ein Wrapper für BlitzBasic und war nur nötig, weil BlitzBasic einfach keinen richtigen Umgang mit Pointern anbieten konnte BlitzMax kann mit Pointern umgehen und die Benutzung dieser DLL ist einfach nur ein Schritt zurück.
Schau dir mal dieses Modul http://www.blitzbasic.com/Comm...opic=69387 an oder benutz die BlitzMax eigenen Speicherfunktionen. Mfg |
||
Intel Core 2 Quad Q8300, 4× 2500 MHz, 4096 MB DDR2-Ram, GeForce 9600GT 512 MB |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group