transform swf net core
1.0.0
.NET Core Port dari Flagstone Transform SWF Java Library untuk memanipulasi file adobe flash swf
Tergantung pada imagesharp dan ikon.zlib.netstandard
Paket ini tersedia di nuget https://www.nuget.org/packages/swftransform/0.0.1-alpha (pra-pelepasan karena imagesharp adalah pra-pelepasan pada saat penerbitan)
Untuk dokumentasi asli lihat http://www.flagstonesoftware.com/transform/ dan http://www.flagstonesoftware.com/cookbook/index.html
Contoh Cepat - Ganti gambar dalam file SWF:
using com . flagstone . transform ;
using com . flagstone . transform . image ;
using com . flagstone . transform . util . image ;
///...
var movie = new Movie ( ) ;
movie . decodeFromFile ( new FileInfo ( "orig.swf" ) ) ; //read swf from file
//print all objects in swf file
foreach ( var obj in movie . Objects )
{
Debug . WriteLine ( obj . ToString ( ) ) ;
}
//find image in SWF file (there can be several types - DefineImage, DefineImage2, DefineJpegImage, etc
var image = movie . Objects . OfType < DefineImage > ( ) . FirstOrDefault ( ) ;
if ( image != null )
{
var imgBytes = imageStream . ToArray ( ) ; //in this particular example we have RAW image stream in RGBA format
PNGDecoder . applyAlpha ( imgBytes ) ;
var compressed = PNGDecoder . zip ( imgBytes ) ;
var newImage = new DefineImage ( image . Identifier , ( int ) size . Width , ( int ) size . Height , compressed , 24 ) ; //create SWF image directly
movie . Objects . Insert ( movie . Objects . IndexOf ( image ) , newImage ) ;
movie . Objects . Remove ( image ) ;
}
movie . encodeToFile ( new FileInfo ( "modified.swf" ) ) ;