2011-01-25 20:23:48 +0000 2011-01-25 20:23:48 +0000
50
50

Kopiëren van PNG met transparantie vanuit browser toont een zwarte achtergrond

Wanneer ik een PNG-afbeelding met transparantie naar het klembord kopieer en deze vervolgens in Photoshop, Paint, enz. - verandert de transparantie in zwart.

Is er een workaround voor dit? Is dit een browser probleem, een applicatie probleem of een OS probleem met het klembord?

Ik gebruik Windows 7 en heb getest met de laatste versies van Chrome en Internet Explorer.

Antwoorden (8)

32
32
32
2011-01-25 21:17:34 +0000

Copy-Paste behoudt de transparantie niet. Probeer het bestand op te slaan en gebruik dan Open File in Photoshop. AFAIK, Paint heeft niet de mogelijkheid om transparantie enabled png bestanden op te slaan.

12
12
12
2014-11-13 17:01:12 +0000

Ik plaats de opmerking van @DanLugg als antwoord, omdat dat het handigst is voor Windows , IMHO:

  1. Klik met de rechtermuisknop op de afbeelding en Copy Image URL vanuit de browser.
  2. In Photoshop kies je File->Open (ctrl-o) en plak je de URL in het bestandsnaamgedeelte van het dialoogvenster.
  3. Photoshop/Windows zal de URL downloaden naar een tijdelijk bestand en het openen.

Voor OS X is er geen veld in een Open File Dialog/Sheet waar je een URI kunt plakken. In plaats daarvan moet je het bestand downloaden en openen (bijv. slepen van browser naar Bureaublad, dan sleep je het nieuwe bestand naar het Dock of naar je Photoshop document) en dan het tijdelijke bestand verwijderen.


FWIW, dit lijkt een Photoshop probleem te zijn, niet een browser of OS probleem. Op zowel OS X als Windows kan ik een PNG-afbeelding met transparantie vanuit Chrome (en ook Safari op OS X) kopiëren en in Illustrator of andere toepassingen plakken en ervoor zorgen dat de transparantie behouden blijft. Alleen Photoshop is hier debet aan.

3
3
3
2014-12-01 02:20:55 +0000

Probeer dit: kopieer de transparante afbeelding, plak ze in MS Word. Kopieer (of sleep) het dan vanuit Word en plak het in het andere doelprogramma.

Ik heb ontdekt dat plakken in Visio vanuit Chrome zwart wordt, maar goed werkt in Word, en dan gekopieerd vanuit Word plakt het goed en transparant in Visio.

1
1
1
2017-02-01 07:15:07 +0000

Ik heb een workaround gemaakt die het probleem aanpakt. Door mijn script uit te voeren nadat je een PNG hebt gekopieerd, kun je een afbeelding vanuit Chrome in Photoshop, Paint, enz. plakken met de transparantie in tact.

Programma + Bron: https://github.com/skoshy/CopyTransparentImages/releases

Als je er problemen mee hebt, laat het me gerust weten hier of op Github!

0
0
0
2012-09-21 20:11:01 +0000

U kunt de afbeelding gewoon van de browser naar Photoshop slepen of een ander programma dat een PNG-bestand op de juiste manier kan verwerken.

0
0
0
2018-05-15 03:04:39 +0000

Dus ik had genoeg van deze ergernis en maakte een omweg.

Het bestaat uit twee delen:

  • Een klein hulpprogramma dat ik schreef om de afbeelding op het klembord op te slaan in een .png bestand
  • Een AutoHotKey script

Het AutoHotKey script controleert of Photoshop op dat moment actief is, en als dat zo is onderschept het de Ctrl+V toetscombinatie, en dan voert het het hulpprogramma uit.

Als het hulpprogramma een afbeelding heeft opgeslagen in %TEMP%\clip.png, wordt de toetscombinatie Shift+Ctrl+F12 naar Photoshop gestuurd, die ik heb gekoppeld aan een Photoshop Actie om het clip.png bestand in het huidig geopende document te plaatsen.

Als het hulpprogramma de afbeelding niet heeft opgeslagen, wordt de standaard Ctrl+V toetscombinatie naar Photoshop gestuurd en wordt een standaard plakbewerking uitgevoerd.

Alle broncode is hier beschikbaar: https://github.com/SilverEzhik/ClipboardToPNG , en het hulpprogramma kan hier worden gedownload: https://github.com/SilverEzhik/ClipboardToPNG/releases

Om de Photoshop-actie te maken, maakt u een nieuwe actie met de toetscombinatie Shift+Ctrl+F12 (of wijzigt u de combinatie in het scriptbestand), en tijdens het opnemen gaat u naar File > Place Embedded..., en plakt u %TEMP%\clip.png in het veld bestandsnaam.

De broncode voor het AHK-script staat hieronder - als u AutoHotKey nog niet eerder hebt gebruikt, installeer het dan, sla de code dan op in een filename.ahk bestand in dezelfde directory als het hulpprogramma ClipboardToPNG.exe, en voer het dan gewoon uit.

DoPhotoshopPaste() {
    RunWait, %A_ScriptDir%\ClipboardToPNG.exe ; run utility, wait for it to complete
    if (ErrorLevel == 0) { ; if error code is 0
        SendEvent, +^{F12} ; press Shift+Ctrl+F12 to run the designated Photoshop action to paste
    }
    else { 
        SendEvent, ^v ; else, just perform a standard paste.
    }
}

#IfWinActive ahk_exe Photoshop.exe ; only activate this hotkey when photoshop is active
    ^v::DoPhotoshopPaste()
#IfWinActive
0
0
0
2016-01-18 05:10:30 +0000

Voor iedereen die het zich afvraagt, als je een zwarte achtergrondkleur krijgt op een gekopieerd PNG bestand, zelfs als je het handmatig opent, probeer dan te controleren of er geen alpha channel is.

Het lijkt erop dat afhankelijk van welke software gebruikt is om de PNG te maken, de transparantie soms in de lagen bewaard wordt, maar soms ook in een alpha channel.

Een truc als het in het alpha channel zit, is eenvoudig CTRL+Click op het kleine preview van het alpha channel om het te selecteren en maak dan een masker op de laag met de zwarte achtergrond van de selectie. (Daarna kun je het alpha channel verwijderen)

0
0
0
2013-01-16 10:15:59 +0000

Ik heb hier net veel tijd in gestoken. Ik heb een tijdje Photoshop gebruikt om semi-transparante texturen te kopiëren tijdens het prototypen (met de bestemming Axure RP).

Nu, ik heb geprobeerd om de nieuwe clipboard API in html 5 te gebruiken. Ik ontleedde de PNG bestanden die worden gegenereerd door dit proces.

Als ik het klembord gebruik (met een rechthoekige markering) om een semi-transparante textuur naar de browser te kopiëren met de klembord API, zet het de alpha byte op FF (volledig ondoorzichtig).

Als ik de drag and drop API gebruik om een “Opslaan als Web” PNG 24 bestand naar de browser te kopiëren, werkt het zoals verwacht en transparante pixels werken (en de alpha byte wordt niet gedwongen tot FF).

Opmerking: Zelfs als Photoshop zegt dat het 24 bit is, exporteert het eigenlijk nog steeds als 8 bit (bevestigd).