AS3 中的 Facebook 数据到 DisplayObject

发布于 2024-08-24 13:02:28 字数 151 浏览 7 评论 0原文

是否可以将 facebook 数据(例如 user_pic)转换为 DisplayObject,以便更容易操作? 我想做的是,当用户在我的网站中执行 FacebookConnect 操作时,他们可以在将图像提交到图库中之前缩放图像(例如使用转换工具)。

Is it possible to convert facebook data (ex. user_pic) into a DisplayObject so I can be easier to manipulate?
What I m trying to do is when users do FacebookConnect in my site to let them have the possibility to scale their image (like transform tool usage) before submit it in a gallery.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

2024-08-31 13:02:28

更新:事实证明,OP 已经在 UILoader 中拥有该图像。在这种情况下,您可以使用 UILoadercontent 属性来访问它。

var img:Bitmap = Bitmap(uiLoader.content);
var bitmapdata:BitmapData = img.bitmapData;

您可以使用 Loader 对象并对其进行操作,前提是图像托管在允许来自您的域的 SWF 的服务器中使用适当的 crossdomain.xml 访问内容。

如果您知道策略文件的位置,请调用 Security.loadPoliCyFile 在加载图像之前。 Flash 播放器将尝试从默认位置 /crossdomain.xml 加载它

Security.loadPolicyFile(policy-file-url);

var ldr:Loader = new Loader();
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoad);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError);
ldr.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
ldr.load(new URLRequest(the-image-url);

function onError(e:Event):void
{
  trace(e);
}
function onLoad(e:Event):void
{
  //this will fail if there is no crossdomain.xml file at
  //the image's originating server.
  var image:Bitmap = LoaderInfo(e.target).content as Bitmap;
  var bitmapData:BitmapData = image.bitmapData;
  //do whatever you want with the bitmap data here
  addChild(image);
}

Update: It turns out that OP already has the image in a UILoader. In that case, you can access it using the content property of UILoader

var img:Bitmap = Bitmap(uiLoader.content);
var bitmapdata:BitmapData = img.bitmapData;

You can load the user picture to your SWF using a Loader object and manipulate it, provided the image is hosted in a sever that allows SWFs from your domain to access contents using appropriate crossdomain.xml.

If you know the location of policy file, call Security.loadPoliCyFile before loading image. Flash player will try to load it from the default location /crossdomain.xml

Security.loadPolicyFile(policy-file-url);

var ldr:Loader = new Loader();
ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoad);
ldr.contentLoaderInfo.addEventListener(IOErrorEvent.IO_ERROR, onError);
ldr.contentLoaderInfo.addEventListener(SecurityErrorEvent.SECURITY_ERROR, onError);
ldr.load(new URLRequest(the-image-url);

function onError(e:Event):void
{
  trace(e);
}
function onLoad(e:Event):void
{
  //this will fail if there is no crossdomain.xml file at
  //the image's originating server.
  var image:Bitmap = LoaderInfo(e.target).content as Bitmap;
  var bitmapData:BitmapData = image.bitmapData;
  //do whatever you want with the bitmap data here
  addChild(image);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文