If you are looking for the decompiler itself, visit https://github.com/jindrapetrik/jpexs-decompiler
List of issues
: The issue tracker is now writable again and logged users can download files too. But note that our support is very LIMITED.
#1331 Is there a easier way to set "Allow Smoothing" for bitmap (in Flash Library)?
What I want to achieve is to turn on/off "Allow Smoothing" option for bitmap (fo smooth scaling). For now, I can decompile the .swf (with JPEXS) to .fla and open it with Flash, open Library panel, select the bitmap, right click and select property, and finally check/uncheck "Allow Smoothing" then export a .swf file again. This process is not only complicate, but also may result in the final .swf being different than the original file in many ways. Is it possible to toggle this option without doing the process I descirbed above? I'd like to keep minimal modification (as less as possible) to the original .swf file.
Please try the following: - open the swf with FFDec - select the image - in the left bottom "Basic tag info" area check the dependent characters field yout image should be used in a shape tag. - select the appropriate shape tag (same characterid) in the tag tree which is in the dependent characters field of the image tag. (probably the first, so if it shows "11, 15, 31"), then you probably have to select the shapes/DefineShapeX (11). - right click on the shape tag, select raw edit - find the bitmap fill style in the tree. maybe it is in shapes/fillstyles/fillstyles/fillstyle[x] or it can be somewhere in the shapes records, eg: shapes/shaperecords/record (should be stylechangerecord)/fillstyles/fillstyles/fillstyle[x] - here you should see a fillstlyetype - press edit button - click on the fillstyle type, select the "repeating bitmap" instead of the "non smoothed repeating bitmap", or select the "clipped bitmap" instead of the "non smoothed clipped bitmap" This steps are for version 10.0, in earlier versions you have to specify the number values for the fillstyletype: (0 - solid) (16 - linear gradient) (18 - radial gradient) (19 - focal radial gradient) 64 - repeating bitmap 65 - clipped bitmap 66 - non smoothed repeating bitmap 67 - non smoothed clipped bitmap
Well... That is not a easier way, but it sure does what I want. I'd better make some kind of automation tool to repeat that process. Is it reliable (guaranteed everything else is not touched) if I do [ffdec.jar -swf2xml] -> [edit the xml file (basically replace 67 with 65 / 66 with 64 in fillStyleType)] -> [ffdec.jar -xml2swf]? Or is there any document I can follow?
The most reliable way is the raw editing. However the xml export/import should be also good. If you find any problem, please report it, and we will fix it. But I think the easiest way to do this is using a simple plugin. Do you have a little java progamming knowledge? I've created a simple plugin (attached to this post), please try it. You should put it to the plugins subfolder of the ffdec program's folder. You can find the source cde of the plugin here: https://github.com/jindrapetrik/jpexs-decompiler/blob/dev/libsrc/plugins/src/BitmapFillCha nger.java If you have Java knowledge feel free to modify it:) You can use it from command line in with the folowing command: ffdec.bat -cli yourfile.swf -custom x The custom parameter is only needed to detect from the pluigin whether it is called from command line or not (we don't want to execute it when swf is opoened from FFDec GUI). I'll simplify it, but with the current stable version it is needed.
BitmapFillChanger.class (5 KiB)