Using image without writing it to a file? Topic is solved

Get help with using AutoHotkey (v1.1 and older) and its commands and hotkeys
kyuuuri
Posts: 340
Joined: 09 Jan 2016, 19:20

Using image without writing it to a file?

25 Jan 2019, 03:36

Hello, is it possible to use an image without writing it to a file? What I need is something like what can be done in HTML where you can use the Base64 encode of an image instead of having the image in a file.

To be more specific, it would be something like this:

Code: Select all

image = ;all the image goes here in bitmap, base64, anything.

Gui, add,,  %image%
Would that be impossible without changing ahk's source code?
swagfag
Posts: 6222
Joined: 11 Jan 2017, 17:59

Re: Using image without writing it to a file?  Topic is solved

25 Jan 2019, 04:19

yes:

Code: Select all

#Include <Gdip_All> ; https://github.com/mmikeww/AHKv2-Gdip/blob/master/Gdip_All.ahk

Gdip_Startup()

image := "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"
pBitmap := Gdip_BitmapFromBase64(image)
hbm := Gdip_CreateHBITMAPFromBitmap(pBitmap)

Gui Add, Picture, , HBITMAP: %hbm%
Gui Show
ofc, dont leak in ur actual code
kyuuuri
Posts: 340
Joined: 09 Jan 2016, 19:20

Re: Using image without writing it to a file?

25 Jan 2019, 06:00

swagfag wrote:
25 Jan 2019, 04:19
yes:

Code: Select all

#Include <Gdip_All> ; https://github.com/mmikeww/AHKv2-Gdip/blob/master/Gdip_All.ahk

Gdip_Startup()

image := "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"
pBitmap := Gdip_BitmapFromBase64(image)
hbm := Gdip_CreateHBITMAPFromBitmap(pBitmap)

Gui Add, Picture, , HBITMAP: %hbm%
Gui Show
ofc, dont leak in ur actual code
Is this compatible with AhK_L ?

@edit: I have a png image that weights around 1,45MB. When it is encoded as Base64 it weights around 2MB. When I input the image in the code (it has around 2.000.000 letters) I get an error that says: Error: This line does not contaign a recognized action. And it points to the line where I have:
image = all the image thing
I tried changing it to:
image := "all the image thing"
and got this error: Line Text: Error: Missing close-quote
swagfag
Posts: 6222
Joined: 11 Jan 2017, 17:59

Re: Using image without writing it to a file?

25 Jan 2019, 06:17

its compatible with whatever the latest v1 unicode x64 version of ahk is, at the time of posting
its probably compatible with the remaining latest variants, i havent checked
swagfag
Posts: 6222
Joined: 11 Jan 2017, 17:59

Re: Using image without writing it to a file?

25 Jan 2019, 06:19

a single line can only ever contain 16k or so characters
ull have to split ur image into lines if u wanna include it that way
DRocks
Posts: 565
Joined: 08 May 2018, 10:20

Re: Using image without writing it to a file?

25 Jan 2019, 06:20

Can VarSetCapacity help here?
kyuuuri
Posts: 340
Joined: 09 Jan 2016, 19:20

Re: Using image without writing it to a file?

25 Jan 2019, 06:20

Doing something like this would work?

Code: Select all

image := "16k lines" .
. "16k lines" .
...
User avatar
Hellbent
Posts: 2109
Joined: 23 Sep 2017, 13:34

Re: Using image without writing it to a file?

25 Jan 2019, 06:27

kyuuuri wrote:
25 Jan 2019, 06:20
Doing something like this would work?

Code: Select all

image := "16k lines" .
. "16k lines" .
...
How do you create the text for the image?
kyuuuri
Posts: 340
Joined: 09 Jan 2016, 19:20

Re: Using image without writing it to a file?

25 Jan 2019, 06:30

Hellbent wrote:
25 Jan 2019, 06:27
kyuuuri wrote:
25 Jan 2019, 06:20
Doing something like this would work?

Code: Select all

image := "16k lines" .
. "16k lines" .
...
How do you create the text for the image?
Using https://www.browserling.com/tools/image-to-base64 (my image is .png).
kyuuuri wrote:
25 Jan 2019, 06:20
Doing something like this would work?

Code: Select all

image := "16k lines" .
. "16k lines" .
...
Tried something easier using continuation sections but those are limited to 16k as well. What would be the correct way to declare a variable this big (without using another file)?
User avatar
Hellbent
Posts: 2109
Joined: 23 Sep 2017, 13:34

Re: Using image without writing it to a file?

25 Jan 2019, 06:34

kyuuuri wrote:
25 Jan 2019, 06:30
Using https://www.browserling.com/tools/image-to-base64 (my image is .png).
Thank you. Was not aware of this, in the past I had just created a script to get the value of every pixel and then drew it in a loop.

Return to “Ask for Help (v1)”

Who is online

Users browsing this forum: aitaixy, Nerafius, RandomBoy and 186 guests