📄 fsimageconstructortest.java
字号:
package com.flagstone.transform.test;
import java.io.*;
import com.flagstone.transform.*;
import com.flagstone.transform.util.*;
public class FSImageConstructorTest
{
private File sourceDir = null;
private File destDir = null;
private String extension = null;
public FSImageConstructorTest()
{
}
/**
* @testng.configuration beforeTest = "true" alwaysRun = "true"
* @testng.parameters value = "srcDir dstDir ext"
*/
public void configure(String srcDir, String dstDir, String ext)
{
sourceDir = new File(srcDir);
destDir = new File(dstDir);
extension = ext;
}
/**
* @testng.test dataProvider="files"
*/
public void displayImage(File imageFile)
{
try
{
String fileName = imageFile.getName();
fileName = fileName.substring(0, fileName.lastIndexOf('.')) + ".swf";
File destFile = new File(destDir, fileName);
if (destDir.exists() == false)
assert destDir.mkdirs() : "Count not create directory: "+destDir;
FSImageConstructor imageConstructor = new FSImageConstructor(imageFile.getPath());
encodeImageToFile(imageConstructor, destFile);
}
catch (Exception e)
{
assert false;
}
}
/**
* @testng.data-provider name="files"
*/
public Object[][] findFiles()
{
FilenameFilter filter = new FilenameFilter()
{
public boolean accept(File directory, String name)
{
String ext = name.substring(name.length()-extension.length()).toLowerCase();
return ext.equals(extension);
}
};
Object[][] parameters = new Object[0][0];
if (sourceDir.exists())
{
String[] files = sourceDir.list(filter);
parameters = new Object[files.length][1];
for (int i=0; i<files.length; i++)
parameters[i] = new Object[] { new File(sourceDir, files[i]) };
}
return parameters;
}
private void encodeImageToFile(FSImageConstructor generator, File file) throws Exception
{
FSMovie movie = new FSMovie();
int imageId = movie.newIdentifier();
int shapeId = movie.newIdentifier();
int xOrigin = generator.getWidth()/2;
int yOrigin = generator.getHeight()/2;
FSSolidLine borderStyle = new FSSolidLine(20, FSColorTable.black());
FSDefineObject image = generator.defineImage(imageId);
FSDefineShape3 shape = generator.defineEnclosingShape(shapeId, imageId,
-xOrigin, -yOrigin, borderStyle);
movie.setFrameRate(1.0f);
movie.setFrameSize(shape.getBounds());
movie.add(new FSSetBackgroundColor(FSColorTable.lightblue()));
movie.add(image);
movie.add(shape);
movie.add(new FSPlaceObject2(shapeId, 1, 0, 0));
movie.add(new FSShowFrame());
movie.encodeToFile(file.getPath());
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -