Welcome to the Linux Foundation Forum!

take a screenshot of swf file

1. Sorry for my bad english

2. Please, help me :)

I need to take a screenshot of swf and save it as image file. I found this: http://www.mail-archive.com/swfdec@lists.freedesktop.org/msg00403.html

I wrote something like this:

#include <stdlib.h>
#include <iostream>
#include <swfdec/swfdec.h>
#include <cairo.h>

using namespace std;

void swfdec_player_save (SwfdecPlayer *player, guint width, guint height, const char *filename) {
cairo_surface_t *surface;
cairo_t *cr;

surface = cairo_image_surface_create (CAIRO_FORMAT_ARGB32, width, height);
cr = cairo_create (surface);
swfdec_player_render (player, cr);
cairo_destroy (cr);
cairo_surface_write_to_png (surface, filename);
cairo_surface_destroy (surface);
}

int main(int argc, char *argv[]) {
char *input = argv[1];
char *output = argv[2];

SwfdecPlayer *player = swfdec_player_new(NULL);
SwfdecURL *url = swfdec_url_new_from_input(input);
swfdec_player_set_url(player, url);

swfdec_player_save(player, 300, 300, output);

return 0;
}

, but it doesn't save screenshot to file, it save just empty png file with transparent background.

How can I fix it?

Comments

  • Posts: 1
    The best solution in my eyes is to use a browser screenshot tool on a page that embeds the flash.
  • Posts: 1
    In my eyes you can try to use kayboad "printscreen"

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Welcome!

It looks like you're new here. Sign in or register to get started.
Sign In

Categories

Upcoming Training