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
FpDebug questions
by
440bx
[
Today
at 03:43:41 am]
Lazarus for Windows on aa...
by
Wallaby
[April 23, 2024, 11:46:56 pm]
Parameter passing odditie...
by
KodeZwerg
[April 23, 2024, 11:04:39 pm]
Can function be used for ...
by
jamie
[April 23, 2024, 10:53:10 pm]
(Solved) TIndexedAVLTree ...
by
lainz
[April 23, 2024, 10:49:03 pm]
Demo Scene Picture sinwav...
by
KodeZwerg
[April 23, 2024, 10:26:21 pm]
fkInternalCalc
by
zraja
[April 23, 2024, 09:31:07 pm]
A fairly simple sound sol...
by
KodeZwerg
[April 23, 2024, 09:23:37 pm]
add new targets to make
by
marcov
[April 23, 2024, 08:38:42 pm]
how to tweek fpmake to co...
by
marcov
[April 23, 2024, 08:29:16 pm]
Quirky windows
by
ASerge
[April 23, 2024, 07:07:16 pm]
[Request] Demo Scene Sub ...
by
Gigatron
[April 23, 2024, 06:29:39 pm]
Unlocking Files
by
KodeZwerg
[April 23, 2024, 06:03:08 pm]
[SOLVED] trunk bug for mi...
by
Key-Real
[April 23, 2024, 05:56:32 pm]
Demo Scene Bitmap Font Sc...
by
Gigatron
[April 23, 2024, 05:56:27 pm]
Compile/Convert Delphi pr...
by
Martin_fr
[April 23, 2024, 05:43:11 pm]
Generics - correct syntax
by
Thaddy
[April 23, 2024, 05:40:59 pm]
InstallAware Using Lazaru...
by
msintle
[April 23, 2024, 05:26:36 pm]
Xcode Command Line Tools ...
by
Joseph
[April 23, 2024, 05:16:39 pm]
Offical launch of the 1 B...
by
Hartmut
[April 23, 2024, 04:49:29 pm]
what to do if my target M...
by
nickysn
[April 23, 2024, 04:16:02 pm]
compiler error in unit
by
paule32
[April 23, 2024, 03:49:50 pm]
Multithreading - synchron...
by
mika
[April 23, 2024, 01:48:51 pm]
May be useful to somebody
by
KodeZwerg
[April 23, 2024, 12:38:22 pm]
match automatic highlight...
by
Чебурашка
[April 23, 2024, 11:35:14 am]
« previous
next »
Print
Pages: [
1
]
Author
Topic: [Answered, no solution] GetFormImage on MacOS generates black bitmap (Read 1828 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