-
Bilder in MSN nachmalen
Hi, ich habe ein Programm gemacht was Sachen vom Bildschirm abliest und diese dann in MSN nachmalt.
Farben konvertiert er zu Greyscale und malt diese dann im Schachbrettformat.
1.0 Bild:
http://filesmelt.com/Imagehosting/pi...a9f204d8e3.png
1.2 Bilder:
http://filesmelt.com/Imagehosting/pi...68a48a9d62.pnghttp://filesmelt.com/Imagehosting/pi...f499b50650.png
Download (1.2):
http://filesmelt.com/Filehosting2/do...e_draw_1_2.rar
Ihr müsst dem billigem GUI folgen, dann sollte es schon klappen. Das Bild dürft ihr bis zum 4. Schritt nicht verdecken. Er liest es nach dem 3. Schritt ab.
Wenn das Bild zu hell oder zu dunkel wird, müsst ihr im 3. Schritt 50 oder -50, oder mehr hinschreiben.
!Wenn ihr Aero habt, (Durchsichtige Fenster) solltet ihr diese ausschalten! Das Programm wird sonst 100x langsamer!
Sobald der Cursor sich nicht mehr bewegt, auch wenn MSN noch malt (scheiß MSN) könnt ihr was anderes machen.
Um große Bilder zu verschicken braucht ihr msn 8.5 oder weniger. (Dazu ein Tip: Wenn es updaten will, stellt ihr es auf Windows 2000 Compatibility)
Natürlich klappt das Programm auch mit allen anderen Programmen.
Sollte das Programm durchdrehen könnt ihr es mit "PAUSE" abbrechen.
Es funktioniert am besten mit Graustufen Bilder.
Hier ist ein schönes Bild zum ausprobieren:
http://tbn0.google.com/images?q=tbn:...eheadshade.jpg
Das Programm ist in einer billigen Scriptsprache namens "AutoIt3" geschrieben, wer die exe nicht mag weil ich ja nichts besseres zu tun habe als Keylogger zu verbreiten, ist hier die source:
Code:
#include "math.au3"
hotkeyset( "{PAUSE}", "meep")
dim $greyscale [4]
dim $topleftX
dim $topleftY
dim $bottomrightX
dim $bottomrightY
dim $abstand
dim $startX
dim $startY
dim $modifier
dim $pixel
dim $count = 1
;$contrast = 50
func meep()
Exit
EndFunc
func start()
$exit = msgbox (1, "(1 of 5) Top Left", "Have this window focused, then put your mouse on the top left of your image and hit enter.")
if $exit = 2 then exit
$dummy = mousegetpos()
$topleftX = $dummy[0]
$topleftY = $dummy[1]
$exit = msgbox (1, "(2 of 5) Bottom Right", "Nice one. Now put it on the bottom right corner.")
if $exit = 2 then exit
$dummy = mousegetpos()
$bottomrightX = $dummy[0]
$bottomrightY = $dummy[1]
$modifier = InputBox( "(3 of 5) Modifier", "Add how much darkness? -255 to 255. If you don't know leave it at 0.(Short wait after this window, image being processed!)", "0")
if @error = 1 then exit
new1()
endfunc
func new1()
dim $pixel [3000][3000]
for $y = $topleftY to $bottomrightY
for $x = $topleftX to $bottomrightX
$greyscale[0] = PixelGetColor($x, $y)
$greyscale[1] = 0.299 * BitAND(BitShift($greyscale[0], 16), 255)
$greyscale[2] = 0.587 * BitAND(BitShift($greyscale[0], 8), 255)
$greyscale[3] = 0.114 * BitAND($greyscale[0], 255)
$greyscale[0] = ($greyscale[1] + $greyscale[2] + $greyscale[3])
$pixel[$x][$y] = $greyscale[0] - $modifier
if $pixel[$x][$y] > 255 then $pixel[$x][$y] = 255
if $pixel[$x][$y] < 0 then $pixel[$x][$y] = 0
if $greyscale[0] > 245 then $pixel[$x][$y] = 255
next
next
for $y = $topleftY to $bottomrightY
for $x = $topleftX to $bottomrightX
$oldpixel = $pixel[$x][$y]
$newpixel = round($oldpixel / 255) * 255
$pixel[$x][$y] = $newpixel
$quant_error = $oldpixel - $newpixel
$pixel[$x+1][$y] = $pixel[$x+1][$y] + 7/16 * $quant_error
$pixel[$x-1][$y+1] = $pixel[$x-1][$y+1] + 3/16 * $quant_error
$pixel[$x][$y+1] = $pixel[$x][$y+1] + 5/16 * $quant_error
$pixel[$x+1][$y+1] = $pixel[$x+1][$y+1] + 1/16 * $quant_error
next
next
intermission()
endfunc
;func changecontrast()
;for $y = $topleftY to $bottomrightY
; for $x = $topleftX to $bottomrightX
; if $pixel[$x][$y] < 127.5 then
; $pixel[$x][$y] += $pixel[$x][$y] * (($contrast / 100 + 1) * (255 / (255 - $pixel[$x][$y]) + 1))
; else
; $pixel[$x][$y] += $pixel[$x][$y] * (1 - ($contrast / 100)) * (255 / (255 - $pixel[$x][$y]))
; endif
; next
;next
;endfunc
func intermission()
$abstand = InputBox( "(4 of 5) Space", "(The image is not needed from now on) The space between each pixel. Leave at 0 if you don't know.", "0")
if @error = 1 then exit
$exit = msgbox ( 1, "(5 of 5) Start", "Now put your mouse where you want the top left corner to be. Make sure there's enough space. A second after you hit OK the image will be drawn.")
if $exit = 2 then exit
$dummy = mousegetpos()
$StartX = $dummy[0]
$StartY = $dummy[1]
sleep(500)
Mousemove( $StartX + (($bottomrightX - $topleftX) * ($abstand + 1)) + 1, $StartY - 1, 0)
mousedown( "left")
mouseup( "left")
sleep(500)
new2()
endfunc
func new2()
for $y = $topleftY to $bottomrightY
for $x = $topleftX to $bottomrightX
if $pixel[$x][$y] = 0 Then
Mousemove( $StartX + ($abstand + 1) * ($x - $topleftX) , $startY + ($abstand + 1) * ($y - $topleftY), 0)
for $c = 1 to $count
mousedown( "left")
mouseup( "left")
next
endif
next
next
$restart = msgbox( 1, "Again", "Rerun the program?")
if $restart = 1 then start()
endfunc
start()
-
AW: Bilder in MSN nachmalen
Dude.....awesome!
Was für ein Abstand ist bei 3 gemeint?
-
AW: Bilder in MSN nachmalen
Abstand von 1 sind die Pixel direkt nebeneinander.
Wenn du zB nen kleines Bild hast es aber größer willst, nimmste bei MSN den mittelgroßen Punkt und nimmst Abstand von 4 oder 5.
-
AW: Bilder in MSN nachmalen
Tihihihi jetzt werd ich alle mit Bildern vollspammen!
-
AW: Bilder in MSN nachmalen
http://filesmelt.com/Imagehosting/pi...02bbbfa7eb.png
Wenn wer weiß wie ich bei niedrigen Grauwerten es hinkriege, dass der statt den wenigen diagonalen Linien richtig Schachbrettet, soll ers mir sagen.
http://filesmelt.com/Imagehosting/pi...b867258772.png
(5 pixel abstand, +100 dunkel)
-
AW: Bilder in MSN nachmalen
Bei Mays rastet er aus D:
-
AW: Bilder in MSN nachmalen
Ist das Paint?
Mit Paint hatte ich probleme dass Paint nachhängt und dann der die Maustaste nicht wieder loslässt.
-
AW: Bilder in MSN nachmalen
It was http://garyc.me/sketch/sketch.swf
Verträgt sich nicht^^ mehr als 68% ink = kackt ab.
-
AW: Bilder in MSN nachmalen
Bei mir wechselt es nur wie wild zwischen allen möglichen offenen Fenstern her, oder öffnet 10-20 zusätzliche Programme aus der Schnellstartleiste :(
Ich öffne das Bild mit Irfanview (120*120 weißes Viereck mit Bild drauf) und dann halt ich die Maus oben links ins MSN Malfenster.
Bei Andreys Avatar + Paint das gleiche.
-
AW: Bilder in MSN nachmalen
Zuerst die maus oben links, dann unten rechts, dann enter, dann nochmal, dann erst die maus ins MSN malfenster.
Und stell sicher dass das Irfanview Bild nicht verdeckt wird (vom MSN fenster zum beispiel).
-
AW: Bilder in MSN nachmalen
Hab ich ja gemacht :(
Hab die Maus im MSN Fenster gehabt und dann auch mit Enter bestätig und auch mal draufgeklickt und dann erst in's MSN Fenster gegangen.
Muss die PixelAngabe eigentlich pixelgenau sein?
Es ist doch die anzahl der Pixel zwischen den beiden X-Koordinaten der oberen linken und unteren rechten Ecke oder?
awz lol, vergiss es.
Hab da immer 99 bzw. 120 reingeschrieben.
-
AW: Bilder in MSN nachmalen
Vielleicht haste das falsch verstanden.
Beim ersten Popup musst du die maus Oben Links auf dem Bild was du malen willst tun.
Beim zweiten dann unten rechts.
http://filesmelt.com/Imagehosting/pi...e4b76b00e3.png
-
AW: Bilder in MSN nachmalen
Zitat:
Zitat von
Pij
awz lol, vergiss es.
Hab da immer 99 bzw. 120 reingeschrieben.
Ist wohl der Abstand zwischen den einzelnen Pixeln bei dem zu zeichnendem :gmod:
Jetzt funktioniert es.
Super Programm :up:
http://i44.tinypic.com/2ldfzhf.jpg
-
AW: Bilder in MSN nachmalen
Pretty impressive!
Echt gute Arbeit. Vorallem, dass der den Grayscale Wert ausrechnet :3
-
AW: Bilder in MSN nachmalen
Das Programm sollte sich nach dem Malen nicht selbst beenden =(
-
AW: Bilder in MSN nachmalen
Oh ja das hasse ich an AutoIT. Es ist schnell überfordert und lagt.
Aber gutes Programm. Kannst ja noch einbauen, dass Aero automatisch deaktiviert wird ;).
-
AW: Bilder in MSN nachmalen
Extra für dich hier ne Version die am ende nachfragt:
http://filesmelt.com/Filehosting2/do...e copy 1_1.rar
Autoit laggt nicht. MSN laggt. (Außer mit aero aber **** aero)
Ich bezweifle dass Autoit aero ausstellen kann. Rumklick lösungen sind mir zu anfällig.
-
AW: Bilder in MSN nachmalen
-
AW: Bilder in MSN nachmalen
AutoIt lagt bei aufwenigen Sachen sehr wohl :P. Hab da schon meine Erfahrungen gemacht D:.
Blöd ist auch das es kein Multithreadning gibt. Nen Fenster mit vielen Funktionen kann dann alleine nur wegen der Whileschleife verzögert Befehle ausführen. Daher nutze ich Autoit nurnoch für einfache Sachen xD.
-
AW: Bilder in MSN nachmalen
-
AW: Bilder in MSN nachmalen
Ja, und zwar Paint.
Es liegt an Paint. Paint ist zu langsam.
Die nächste Version wird ordentliches dithering haben.
http://filesmelt.com/Imagehosting/pi...68a48a9d62.png
Keine diagonalen Linien mehr.
http://filesmelt.com/Imagehosting/pi...f499b50650.png
-
AW: Bilder in MSN nachmalen
Nächste Version?
Du perfektionierst es?
Das gefällt mir :gmod:
-
AW: Bilder in MSN nachmalen
-
AW: Bilder in MSN nachmalen
Wo malst du denn die Bilder?
MSN ist genauso lahm wie Paint und GIMP ist sogar noch langsamer.
-
AW: Bilder in MSN nachmalen
Msn.
musst halt etwas warten (und aero aus haben!)
Gimp und Paint kacken beide ab.
-
AW: Bilder in MSN nachmalen
Klappt eigentlich ganz gut:
http://img198.imageshack.us/img198/4800/klappt.png
Aber andere können meine Bilder nicht sehen :<
-
AW: Bilder in MSN nachmalen
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
████████████████████████████████
Kurz gemodded dass es ASCII malt, aber naja.
(Das ist das Youtube favicon)
-
AW: Bilder in MSN nachmalen
es wird nach und nach immer langsamer D:
Am Anfang ists sau schnell und am Ende bracuht es ewig für eine Zeile.
-
AW: Bilder in MSN nachmalen
MSN schuld.
Du kannst währrend er malt, der Cursor sich aber nicht mehr bewegt, etwas anderes machen (Nur nicht zurück in den Text Modus!)
-
AW: Bilder in MSN nachmalen
Arbeitest du noch an dem Programm? :O
-
AW: Bilder in MSN nachmalen
Zitat:
Zitat von
zocker113
Arbeitest du noch an dem Programm? :O
Uh, ich hab noch ne v3 mit Farben gemacht aber ich sehe kein erweiterungspotential.
http://filesmelt.com/downloader/MSN_draw_new.zip
http://filesmelt.com/downloader/msndrawnew1.png
Ziemlich wie das alte, sollte selbsterklärend sein. Du musst warten bis der mit ner Farbe fertig ist bevor du bei dem Fenster OK drückst.
http://filesmelt.com/downloader/MSN_draw_new_source.txt