Web Development :: Save Screenshot Image To File In Flex 4
Jun 22, 2010
I need the user of my Flex application to be able to save a snapshot of part of the UI to a local jpg file. I got the screenshot part down - can generate an image out of any given control. However, the only way I see to let the user save the image locally is to send to my server which would return it with the appropriate Content-Disposition.
I've managed to draw a custom shape onto a canvas and use that shape as a mask over an image. Is there anyway possible to crop the image and save it out in the custom shape?making whatever is outside the shape transparent? The only image cropping i can find is using rectangles, whereas i need a polygon shape.
I wrote these functions which I use in conjunction to scale down some BitmapData and save it as a PNG. However, the scaledImage.draw(originalImage, scalingMatrix, null, null, null, true); line with smoothing set to true does not have the intended smoothing effect when I save the bitmap data as a PNG using the second function. The resulting image file is not antialiased at all. Is there anything I'm doing wrong here?
public static function scaleImage(originalImage:BitmapData, size:int):BitmapData { // Calculate the scaled size.
On my website people enter, watch a live stream from a remote server (not my server) and when they click on a button it report it to me and what I want to add is the ability for me to take a screenshot of this stream at the very moment when they click that button and save it on the server. They question is how to implement so? Now I just have that stream in an Iframe that shows it as a .swf object Possible solutions I thought of but don't know whether will work are:
Embedding this Iframe inside a flash object that I will create. That means that on the website the users will see a flash object I created that all it does is to show the stream from an url I give it and when the user clicks on a button inside the html it will send the flash the command to save the screenshot now and then save it on my server (don't know how to implement it, so the second question is, if you think it will work, how to do so?).Second solution is to have an open browser on my server that when the user clicks the button, I send an ajax request to the server that will then order the browser to take a screenshot and save it locally on the server. (again, if you think this solution will work, tell me how to implement so).
I'm new to Flash (CS5.5) but have self taught quite a bit. I created a simple "slide show" model of images which fade in and out to other images—it's a holiday greeting card. How do I save/export/publish (not sure of the correct terminology) this .fla file so that my end result is an image that I can insert (as an image) into an email (outlook) and send. The recipient should be able to click on the image and activate the movie.
I made this dress-up type game, and have been trying to figure out how to let the user save an image of their creation. I've been researching and figured out I need to use bitmapData.draw and fileReference.save in the actionscript somewhere. The only problem is I want this to be a standalone .swf if possible. The 'game' is here. This is part of my code:
my saving part, where user select the necessary equipments & draw the connections. user are also able to generate the cable connection list in datagrid component.
I understand that flash doesnt provide saving to image technically, have seen some websites on the teaching & i tried to apply on my flash.
I have this error: 1061: Call to a possibly undefined method save through a reference with static type flash.net:FileReference. at source: fileRef.save(ba,"EMC"+i+".jpg");
I want to save the file locally inside harddisk, without any server script.
I have an masked image that is externally loaded onto my stage that the user can drag and position.I then need to be able to record or save where and how the user has positioned the image by either -taking a bitmap copy of where the user has positioned the image (my first and easiest thought of how to do this) -or is it possible to get X and Y co ordinates of where they have positioned it I have a movie currently set up but when the user clicks 'save and continue' it takes a copy of the original position of the image - not from where you have last dragged it to?Full code and attached fla file below
Code:
stop(); //-------------- // Loader //-------------- var imageP1:Loader = new Loader();
I would like to take a "screenshot" of the stage within flash and send it as an image by email. I have tried AMFPHP and the method described here - [URL]. This is saving a jpg of a movie on the server, but no email function. I know how to setup a very simple php email file but without attachment. So my problem is I have no idea how to "connect" all those parts together and make it so that when you click the button in flash it'll send the jpg by email directly.
I have an masked image that is externally loaded onto my stage that the user can drag and position. I then need to be able to record or save where and how the user has positioned the image by either
-taking a bitmap copy of where the user has positioned the image (my first and easiest thought of how to do this) -or is it possible to get X and Y co ordinates of where they have positioned it
I have a movie currently set up but when the user clicks 'save and continue' it takes a copy of the original position of the image - not from where you have last dragged it to. Full code and attached fla file below:
Code: stop(); // Loader var imageP1:Loader = new Loader(); var request:URLRequest = new URLRequest('XXXXXXX/image.jpg'); imageP1.load(request); addChild(imageP1); [Code] .....
I am changing image through flex every time i change it saved into server directory with same name(which i am referring to show). So when i refresh my page my browser didn't send new request to server since it's already in request.so didn't getting new image.Tip:- when i clear browser history it will come with new image
In Flex, I am using graphics.codec.JPEGEncoder to save image files that are edited inside application (normal manipulations like brightness etc.) I am able to save files perfectly. What I want to know is that is there any way I can save the image with a better dpi? Say, for instance the image that is loaded and manipulated was originally of 72dpi, now can I save it with a dpi of 150 or 300 ? If so, how to do it.
Doesn't have to be using the JPEGEncoder, if there's any way to do it at all, like using any library etc, I am okay with it.
Note: If it matters, I am using Bitmapdata to store the image and manipulations and saving the image with JPEGEncoder by supplying it's data as bytearray like below.
var imageBytes:ByteArray = encoder.encode(myBitmapData);
I'm building a cms and I want users to be able to upload videos but I'm not familiar with video upload & conversion. Is there an example or has anybody coded a solution like this? I heard about ffmpeg but I don't know how to integrate it with asp.net.As simple solution I can make my clients upload flv files but then I would still need to get a screenshot from that fvl.
I am trying to save jpg files to my applicationStorageDirectory with custom names.
var filename:String = "visitorimage.jpg"; var file:File = File.applicationStorageDirectory.resolvePath( filename ); var wr:File = new File( file.nativePath );
[Code]....
The image is saved but i need to give the image dynamic name say using a timestamp or random number.
My application consists of displaying a large custom tree like structure to the user that can eventually grow to massive proportions like the dimensions listed in the question. I allow them to export the image with the following line of code tied to a button click event:
var image:ImageSnapshot = ImageSnapshot.captureImage(this, 72, new PNGEncoder(), false);
I've managed to export images close to the dimensions listed but around there it start to get the error message listed below after spinning for close to 15 seconds:
Error: Error #1000: The system is out of memory. at flash.utils::ByteArray/writeBytes() at mx.graphics::ImageSnapshot$/mergePixelRows()
[Code]....
Is the flashplayer plugin for my browser running out of memory? I noticed in my task manager it got up to about 1.2GB of memory usage(I have 4GB on my system). If that is the case is it possible to limit the memory usage for a given function like the ImageSnapshot.captureImage() call above?
Is there maybe a way to generate the component into 2 or 4 ImageSnapshot objects and piece them together afterward?
I've implemented a PDF generation function in my flex app using alivePDF, and I'm wondering if the process I've used to get the file to the user creates an XSS vulnerability.This is the process I'm currently using:Create the PDF in the flex application.Send the binary PDF file to the server using a POST, along with the filename to deliver it as.An ASP.NET script on the server checks the filename to make sure it's valid, and then sends it back to the user as an HTTP attachment.
is there a way to save, not save as, from an online flex app onto someone's local machine?asically, if a user opens a file local to their machine in an online flex app, is there a way to allow them to save it locally without going through dialog boxes and picking file names?
I will have a list of links to PDF documents in my Flex web app.What I want to do is that upon clicking some button, open SAVE AS dialog for some pdf from the URL list and download it to disk.What I want to avoid is viewing PDF in browser.ALL I know is that flash.net.FileReference will take raw data but no links.
I have a Google map in my flex app that I need to occasionally export to an image file. Every time I try to call the, Map.getPrintableBitmap() or ImageSnapshot.captureBitmapData() functions I get the Error #2123: Security sandbox violation.I've tried adding various security allowances like:[code]I'm asking for a bitmap representation of a component that's already been drawn on the client's screen. Clearly all the information necessary to provide that bitmap is already present in local memory.[code]
How do we save file locally in Flash (ActionScript 3) without displaying dialog. I know we can use the following code to save file locally but it prompts Save dialog. I don't want this dialog while saving file locally.
I'm developing some photo viewer app for some web site in flex 3. One of the demands made by my customers is preventing of their unique visual content from copying at least by standard Windows tools ("Print Screen" button). Are there any tricky techniques capable of doing this?
The first thing occurred to me is handling "Print Screen" button of keyboard doesn't seem to be as effective as my client needs.