Lazarus
Home
Help
TinyPortal
Search
Login
Register
Lazarus
»
Forum
»
Programming
»
Graphics and Multimedia
»
Graphics
(Moderator:
Ask
) »
[Answered, no solution] GetFormImage on MacOS generates black bitmap
Free Pascal
Website
Downloads
Wiki
Documentation
Bugtracker
Mailing List
Lazarus
Website
Downloads (Laz+FPC)
Packages (OPM)
FAQ
Wiki
Documentation (RTL/FCL/LCL)
Bugtracker
CCR Bugs
IRC channel
GIT
Mailing List
Other languages
Foundation
Website
Useful Wiki Links
Project Roadmap
Getting the Source
Screenshots
How to use the forum
About donations (wiki)
Bookstore
Computer Math and Games in Pascal
(preview)
Lazarus Handbook
Search
Advanced search
Recent
open dialog - default dir...
by
KodeZwerg
[
Today
at 12:34:53 am]
Can function be used for ...
by
jamie
[
Today
at 12:26:42 am]
DbGrid, grid column check...
by
KodeZwerg
[
Today
at 12:08:29 am]
Colore celle StringGrid
by
JuanBell
[April 24, 2024, 10:37:56 pm]
Likely bug
by
440bx
[April 24, 2024, 10:12:59 pm]
Any upgrades to fpWeb pag...
by
verasan
[April 24, 2024, 10:11:46 pm]
Web Applications with Pas...
by
Handoko
[April 24, 2024, 08:56:29 pm]
AI, NLP and CAI: Text Gen...
by
indydev
[April 24, 2024, 08:54:00 pm]
Offical launch of the 1 B...
by
Gustavo 'Gus' Carreno
[April 24, 2024, 08:48:22 pm]
Multidimensional arrays a...
by
KodeZwerg
[April 24, 2024, 08:34:38 pm]
Ho Ho Ho IntraWeb in Laza...
by
Thaddy
[April 24, 2024, 08:31:29 pm]
[SOLVED] System.Now gives...
by
alpine
[April 24, 2024, 08:29:19 pm]
Installing and using Vamp...
by
Odacir
[April 24, 2024, 07:58:22 pm]
Demo Scene Picture sinwav...
by
circular
[April 24, 2024, 07:27:02 pm]
Demo Scene Bitmap Font Sc...
by
KodeZwerg
[April 24, 2024, 07:21:14 pm]
what's difference between...
by
ASerge
[April 24, 2024, 07:09:52 pm]
splitting an image
by
KodeZwerg
[April 24, 2024, 07:07:21 pm]
Debugger error
by
bobonwhidbey
[April 24, 2024, 07:03:07 pm]
How to: create DLL file f...
by
paule32
[April 24, 2024, 07:02:31 pm]
Your best UI design - con...
by
circular
[April 24, 2024, 06:48:12 pm]
Converting a string/index...
by
1HuntnMan
[April 24, 2024, 06:35:19 pm]
Drawing grid lines on a t...
by
KodeZwerg
[April 24, 2024, 05:42:19 pm]
Compile/Convert Delphi pr...
by
Martin_fr
[April 24, 2024, 05:29:03 pm]
Lazarus features in a non...
by
Lutz Mändle
[April 24, 2024, 05:26:34 pm]
Lazarus for Windows on aa...
by
msintle
[April 24, 2024, 05:03:57 pm]
« previous
next »
Print
Pages: [
1
]
Author
Topic: [Answered, no solution] GetFormImage on MacOS generates black bitmap (Read 1833 times)
wittbo
Full Member
Posts: 150
[Answered, no solution] GetFormImage on MacOS generates black bitmap
«
on:
June 03, 2019, 02:46:46 pm »
Given this simple procedure:
procedure TmyForm.Button1Click(Sender: TObject);
var bm: TBitmap;
begin
bm := myForm.GetFormImage;
bm.Canvas.Changed;
bm.SaveToFile('/users/myuser/downloads/test.bmp');
bm.Free
end;
The file gets generated with the correct dimensions width and height, but the contents of the bitmap in the file is entirely black.
Any idea?
Does GetFormImage only work on Windows?
«
Last Edit: June 05, 2019, 10:41:19 am by wittbo
»
Logged
-wittbo-
MBAir with MacOS 10.14.6 / Lazarus 2.2.4
MacStudio with MacOS 13.0.1 / Lazarus 2.2.4
lucamar
Hero Member
Posts: 4219
Re: GetFormImage on MacOS generates black bitmap
«
Reply #1 on:
June 03, 2019, 04:59:55 pm »
Quote from: wittbo on June 03, 2019, 02:46:46 pm
Does GetFormImage only work on Windows?
No, it works also on Linux. See attached image, made using:
Code: Pascal
[Select]
[+]
[-]
procedure
TMainForm
.
btDoTestClick
(
Sender
:
TObject
)
;
var
Bitmap
:
TBitmap
;
begin
Bitmap
:
=
GetFormImage
;
if
Assigned
(
Bitmap
)
then
try
{Bitmap.Canvas.Changed; - not needed: there's no OnChange handler}
Bitmap
.
SaveToFile
(
'test.bmp'
)
;
Image
.
Picture
.
LoadFromFile
(
'test.bmp'
)
;
finally
Bitmap
.
Free
;
end
;
end
;
Unrelated, but note that it is
very bad practice
to reference the auto-created form instance inside the methods. If you realy need to reference the current object use
Self
, as in:
Self.GetFormImage
Logged
Turbo Pascal 3 CP/M - Amstrad PCW 8256 (512 KB !!!)
Lazarus/FPC 2.0.8/3.0.4 & 2.0.12/3.2.0 - 32/64 bits on:
(K|L|X)Ubuntu 12..18, Windows XP, 7, 10 and various DOSes.
bylaardt
Sr. Member
Posts: 309
Re: GetFormImage on MacOS generates black bitmap
«
Reply #2 on:
June 04, 2019, 01:52:17 am »
this reminds me of an old topic:
https://forum.lazarus.freepascal.org/index.php/topic,27896.msg173144.html#msg173144
Logged
wittbo
Full Member
Posts: 150
Re: GetFormImage on MacOS generates black bitmap
«
Reply #3 on:
June 04, 2019, 11:13:43 am »
Sorry, but none of the solutions (GetFormimage, ...copyrect, ...) does work on MacOS. The Bitmap remains black.
I believe, it is a special MacOS problem(or cocoa): i will copy a link to this thread into the macos forum.
Logged
-wittbo-
MBAir with MacOS 10.14.6 / Lazarus 2.2.4
MacStudio with MacOS 13.0.1 / Lazarus 2.2.4
bylaardt
Sr. Member
Posts: 309
Re: GetFormImage on MacOS generates black bitmap
«
Reply #4 on:
June 04, 2019, 05:19:47 pm »
even paintto?
Logged
wittbo
Full Member
Posts: 150
Re: GetFormImage on MacOS generates black bitmap
«
Reply #5 on:
June 05, 2019, 10:39:47 am »
Skalogryz wrote in the correspondent macos thread:
that's easy. The function has not been implemented for cocoa yet
https://forum.lazarus.freepascal.org/index.php/topic,45606.0.html
Therefore actually no solution for Mac users.
Logged
-wittbo-
MBAir with MacOS 10.14.6 / Lazarus 2.2.4
MacStudio with MacOS 13.0.1 / Lazarus 2.2.4
bylaardt
Sr. Member
Posts: 309
Re: [Answered, no solution] GetFormImage on MacOS generates black bitmap
«
Reply #6 on:
June 05, 2019, 03:46:14 pm »
have you try?
Code: Pascal
[Select]
[+]
[-]
MyCapture
:
=
TBitMap
.
Create
(
application
)
;
MyCapture
.
SetSize
(
ClientWidth
,
ClientHeight
)
;
MyCapture
.
canvas
.
FillRect
(
0
,
0
,
ClientWidth
,
ClientHeight
)
;
self
.
PaintTo
(
MyCapture
.
canvas
,
0
,
0
)
;
MyCapture
.
SaveToFile
(
'/home/bylaardt/MyFormImage.bmp'
)
;
MyCapture
.
free
;
Logged
wittbo
Full Member
Posts: 150
Re: [Answered, no solution] GetFormImage on MacOS generates black bitmap
«
Reply #7 on:
June 06, 2019, 11:56:39 am »
Sorry, just tested.
But now the Image isn't black, now it's completely white.
Logged
-wittbo-
MBAir with MacOS 10.14.6 / Lazarus 2.2.4
MacStudio with MacOS 13.0.1 / Lazarus 2.2.4
Print
Pages: [
1
]
« previous
next »
Lazarus
»
Forum
»
Programming
»
Graphics and Multimedia
»
Graphics
(Moderator:
Ask
) »
[Answered, no solution] GetFormImage on MacOS generates black bitmap
TinyPortal
© 2005-2018