![]() |
Bitmap in Größe beschränkt
Hallo,
ich habe ein kleines Problem mit einem TBitmap Objekt. Ich wollte eine Grafik erstellen und diese Anschliessend in einer PaintBox Komponente anzeigen. Jedoch bekomme ich eine Fehlermeldung 'Parameter stimmt nicht' wenn das Bitmap höher als ~5500 Pixel wird, jetzt meine Frage wieso ist ein Bitmap so beschränkt. Klar das es eine Beschränkung geben muß den ein Bitmap mit 50.000 x 50.000 Pixeln Beispielsweise wäre nicht gerade Sinnvoll, aber das es nur so wenig ist hätte ich nicht gedacht. Ich habe auch noch nicht probiert ob es an Windows 98 liegt wo runter ich das Programm bisher nur getestet habe. Entwickelt ist das ganze mit Delphi 7 Personal. Ich werde dann wohl die Grafik aufteilen müssen, jedoch hatte mich die Frage internessiert wo die Grenze genau liegt, bzw. was das ganze zu bedeuten hat. Ich habe weder hier im Forum noch in der Onlinehilfe etwas dazu finden können. mfg TUX |
Re: Bitmap in Größe beschränkt
Die Genaue Größe kann ich dir leider auch nicht sagen.
Warum die beschränkung da ist ist aber klar. Denn das BMP mus ja irgendwo gespeichert werden. und ein 5000*5000 großes BMP hat ja 5000*5000*32 Bit. und das sind ca. 80 MB. Es gibt glaubig irgendwo ne Unit die Extrem Große BMP's unterstützt. Aber bei derartigen Dateigrößen würde ich mir eh überlegen ob du die Ausgabe nicht Partiell berechnen magst. |
Re: Bitmap in Größe beschränkt
Ich habe noch ein bisschen ausprobiert und habe die Farbpalette auf 16 Farben herruntergesetzt, wodurch weniger
Speicher belegt wird und nun ist auch eine größere Höhe möglich. Jedoch finde ich das bei 955 x 5750 Pixel nur ~15MB Speicher belegt werden doch relativ wenig, ich hätte erwartet das doch mehr geht. |
Re: Bitmap in Größe beschränkt
Hier ein Artikel zu dem altbekannten Problem:
![]() Grundtenor: es hängt davon ab, in welcher Reihenfolge die Weite/Höhe und PixelFormat gesetzt werden und dann vom Grafikkartentreiber. Näheres dazu in dem Artikel. |
Re: Bitmap in Größe beschränkt
Zitat:
Leider Fehlt in Delphi eine Funktion (API gibt es Sie) Createbitmap(W,H,Pixelformat); Frank :coder: |
Re: Bitmap in Größe beschränkt
TBitmap kennt noch die Methode SetSize. Damit kann Höhe und Breite gleichzeitig gesetzt werden. Setzt man also erst das Pixelformat und dann mit SetSize die Höhe + Breite sollte es auch einigermaßen klappen.
|
Re: Bitmap in Größe beschränkt
Also ich habe das ganze nun im Griff das Problem war das wenn man keine Pixelformat angabe macht der irgendwie damit Probleme,
hat und schon bei einem Bitmap von > 15 MB abbricht. Gibt man jedoch eine Pixelformat angabe an so bekommt man auch viel größere Bilder hin. Vielen dank für die Hilfe und Tipps. mfg TUX |
Alle Zeitangaben in WEZ +1. Es ist jetzt 11:18 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz