當前位置: 首頁>>代碼示例>>Java>>正文


Java GifEncoder類代碼示例

本文整理匯總了Java中com.cburch.logisim.util.GifEncoder的典型用法代碼示例。如果您正苦於以下問題:Java GifEncoder類的具體用法?Java GifEncoder怎麽用?Java GifEncoder使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。


GifEncoder類屬於com.cburch.logisim.util包,在下文中一共展示了GifEncoder類的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: export

import com.cburch.logisim.util.GifEncoder; //導入依賴的package包/類
private void export(Circuit circuit) {
	Bounds bds = circuit.getBounds(canvas.getGraphics()).expand(
			BORDER_SIZE);
	int width = (int) Math.round(bds.getWidth() * scale);
	int height = (int) Math.round(bds.getHeight() * scale);
	BufferedImage img = new BufferedImage(width, height,
			BufferedImage.TYPE_INT_RGB);
	Graphics base = img.getGraphics();
	Graphics g = base.create();
	g.setColor(Color.white);
	g.fillRect(0, 0, width, height);
	g.setColor(Color.black);
	if (g instanceof Graphics2D) {
		((Graphics2D) g).scale(scale, scale);
		((Graphics2D) g).translate(-bds.getX(), -bds.getY());
	} else {
		JOptionPane.showMessageDialog(frame,
				Strings.get("couldNotCreateImage"));
		monitor.close();
	}

	CircuitState circuitState = canvas.getProject().getCircuitState(
			circuit);
	ComponentDrawContext context = new ComponentDrawContext(canvas,
			circuit, circuitState, base, g, printerView);
	circuit.draw(context, null);

	File where;
	if (dest.isDirectory()) {
		where = new File(dest, circuit.getName() + filter.extensions[0]);
	} else if (filter.accept(dest)) {
		where = dest;
	} else {
		String newName = dest.getName() + filter.extensions[0];
		where = new File(dest.getParentFile(), newName);
	}
	try {
		switch (filter.type) {
		case FORMAT_GIF:
			GifEncoder.toFile(img, where, monitor);
			break;
		case FORMAT_PNG:
			ImageIO.write(img, "PNG", where);
			break;
		case FORMAT_JPG:
			ImageIO.write(img, "JPEG", where);
			break;
		}
	} catch (Exception e) {
		JOptionPane.showMessageDialog(frame,
				Strings.get("couldNotCreateFile"));
		monitor.close();
		return;
	}
	g.dispose();
	monitor.close();
}
 
開發者ID:reds-heig,項目名稱:logisim-evolution,代碼行數:58,代碼來源:ExportImage.java

示例2: export

import com.cburch.logisim.util.GifEncoder; //導入依賴的package包/類
private void export(Circuit circuit) {
	Bounds bds = circuit.getBounds(canvas.getGraphics())
		.expand(BORDER_SIZE);
	int width = (int) Math.round(bds.getWidth() * scale);
	int height = (int) Math.round(bds.getHeight() * scale);
	BufferedImage img = new BufferedImage(width, height,
			BufferedImage.TYPE_INT_RGB);
	Graphics base = img.getGraphics();
	Graphics g = base.create();
	g.setColor(Color.white);
	g.fillRect(0, 0, width, height);
	g.setColor(Color.black);
	if (g instanceof Graphics2D) {
		((Graphics2D) g).scale(scale, scale);
		((Graphics2D) g).translate(-bds.getX(), -bds.getY());
	} else {
		JOptionPane.showMessageDialog(frame,
				Strings.get("couldNotCreateImage"));
		monitor.close();
	}

	CircuitState circuitState = canvas.getProject().getCircuitState(circuit);
	ComponentDrawContext context = new ComponentDrawContext(canvas,
			circuit, circuitState, base, g, printerView);
	circuit.draw(context, null);

	File where;
	if (dest.isDirectory()) {
		where = new File(dest, circuit.getName() + filter.extensions[0]);
	} else if (filter.accept(dest)) {
		where = dest;
	} else {
		String newName = dest.getName() + filter.extensions[0];
		where = new File(dest.getParentFile(), newName);
	}
	try {
		switch (filter.type) {
		case FORMAT_GIF: GifEncoder.toFile(img, where, monitor); break;
		case FORMAT_PNG: ImageIO.write(img, "PNG", where); break;
		case FORMAT_JPG: ImageIO.write(img, "JPEG", where); break;
		}
	} catch (Exception e) {
		JOptionPane.showMessageDialog(frame,
				Strings.get("couldNotCreateFile"));
		monitor.close();
		return;
	}
	g.dispose();
	monitor.close();
}
 
開發者ID:franciscaconcha,項目名稱:ProyectoLogisim,代碼行數:51,代碼來源:ExportImage.java


注:本文中的com.cburch.logisim.util.GifEncoder類示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。