9
votes

Comment copieriez-vous une image PNG dans le presse-papier à l'aide de DELPHI

Utiliser Delphi 2010 J'aimerais copier une image PNG dans le presse-papiers tout en préservant la transparence alpha. Malheureusement, la méthode TPngimage.SaveClipboardFormat le dessinera à un bitmap et la transparence sera perdue.

J'aimerais que l'image PNG soit collée dans des applications telles que Photoshop et Word avec une transparence alpha.

Une idée de la façon de faire ça? Comment d'autres applications font-elles pour copier la transparence dans le presse-papiers?


2 commentaires

John, a-t-il fonctionné pour vous parce que j'ai le même problème en ce moment, utilisez-vous pour gobjecter? J'utilise d7 bott je pense que c'est le même concept


Autant que je me souvienne, de nombreuses applications ne traitent pas le format PNG dans le presse-papiers, mais il s'agit d'un ancien projet et je ne me souviens pas des limitations exactes.


3 Réponses :


4
votes

Il est possible qu'ils utilisent un autre format de presse-papiers, voir http://msdn.microsoft.com/en-us /Library/ms649013(vs.85).aspx Pour une liste des formats de presse-papiers disponibles. Ou ils pourraient enregistrer leur propre format de presse-papiers telle que xxx

, puis écrivez simplement les données PNG dans le presse-papiers. Si la chaîne de format du presse-papiers spécifié est standard (d'autres applications enregistre le même format de presse-papiers), vous pourrez la coller dans d'autres applications qui prennent en charge ce format du presse-papiers.

Vous devrez peut-être appeler des fonctions Windows directement. Comme l'emballage du presse-papiers de Delphi n'est pas très bon.


0 commentaires

6
votes

Je copierais d'abord une image avec des informations de transparence dans le presse-papiers dans Photoshop, puis examinez ce qui est réellement sur le presse-papiers. Lorsque vous le savez, vous pouvez probablement comprendre comment écrire vous-même cette donnée.


0 commentaires

6
votes

avec Delphi Xe, tout ce que j'ai fait était: xxx


0 commentaires