mirror of
https://github.com/magefree/mage.git
synced 2025-12-24 20:41:58 -08:00
refactor: extracted resource load methods from ModernCardRenderer to ModernCard (#11478)
This commit is contained in:
parent
3a92d67d10
commit
6a1f4a35d4
2 changed files with 49 additions and 34 deletions
|
|
@ -13,6 +13,7 @@ import mage.view.CardView;
|
|||
import mage.view.PermanentView;
|
||||
import org.apache.log4j.Logger;
|
||||
import static org.mage.card.arcane.ManaSymbols.getSizedManaSymbol;
|
||||
import static org.mage.card.arcane.ModernCardResourceLoader.*;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
|
|
@ -62,40 +63,6 @@ public class ModernCardRenderer extends CardRenderer {
|
|||
private static final GlowText glowTextRenderer = new GlowText();
|
||||
public static final Color MANA_ICONS_TEXT_COLOR = Color.DARK_GRAY; // text color of missing mana icons in IMAGE render mode
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Textures for modern frame cards
|
||||
private static TexturePaint loadBackgroundTexture(String name) {
|
||||
URL url = ModernCardRenderer.class.getResource("/cardrender/background_texture_" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
BufferedImage img = CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
return new TexturePaint(img, new Rectangle(0, 0, img.getWidth(), img.getHeight()));
|
||||
}
|
||||
|
||||
private static BufferedImage loadBackgroundImage(String name) {
|
||||
URL url = ModernCardRenderer.class.getResource("/cardrender/background_texture_" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
BufferedImage img = CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
return img;
|
||||
}
|
||||
|
||||
private static BufferedImage loadFramePart(String name) {
|
||||
URL url = ModernCardRenderer.class.getResource("/cardrender/" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
return CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
}
|
||||
|
||||
private static Font loadFont(String name) {
|
||||
try (InputStream in = ModernCardRenderer.class.getResourceAsStream("/cardrender/" + name + ".ttf")) {
|
||||
return Font.createFont(
|
||||
Font.TRUETYPE_FONT, in);
|
||||
} catch (IOException e) {
|
||||
LOGGER.info("Failed to load font `" + name + "`, couldn't find resource.");
|
||||
} catch (FontFormatException e) {
|
||||
LOGGER.info("Failed to load font `" + name + "`, bad format.");
|
||||
}
|
||||
return new Font("Arial", Font.PLAIN, 1);
|
||||
}
|
||||
|
||||
// public static final Font BASE_BELEREN_FONT = loadFont("beleren-bold");
|
||||
|
||||
public static final Paint BG_TEXTURE_WHITE = loadBackgroundTexture("white");
|
||||
|
|
|
|||
|
|
@ -0,0 +1,48 @@
|
|||
package org.mage.card.arcane;
|
||||
|
||||
import org.apache.log4j.Logger;
|
||||
|
||||
import javax.swing.*;
|
||||
import java.awt.*;
|
||||
import java.awt.image.BufferedImage;
|
||||
import java.io.IOException;
|
||||
import java.io.InputStream;
|
||||
import java.net.URL;
|
||||
|
||||
public class ModernCardResourceLoader {
|
||||
private static final Logger LOGGER = Logger.getLogger(ModernCardResourceLoader.class);
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
// Textures for modern frame cards
|
||||
protected static TexturePaint loadBackgroundTexture(String name) {
|
||||
URL url = ModernCardResourceLoader.class.getResource("/cardrender/background_texture_" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
BufferedImage img = CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
return new TexturePaint(img, new Rectangle(0, 0, img.getWidth(), img.getHeight()));
|
||||
}
|
||||
|
||||
protected static BufferedImage loadBackgroundImage(String name) {
|
||||
URL url = ModernCardResourceLoader.class.getResource("/cardrender/background_texture_" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
BufferedImage img = CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
return img;
|
||||
}
|
||||
|
||||
protected static BufferedImage loadFramePart(String name) {
|
||||
URL url = ModernCardResourceLoader.class.getResource("/cardrender/" + name + ".png");
|
||||
ImageIcon icon = new ImageIcon(url);
|
||||
return CardRendererUtils.toBufferedImage(icon.getImage());
|
||||
}
|
||||
|
||||
protected static Font loadFont(String name) {
|
||||
try (InputStream in = ModernCardResourceLoader.class.getResourceAsStream("/cardrender/" + name + ".ttf")) {
|
||||
return Font.createFont(
|
||||
Font.TRUETYPE_FONT, in);
|
||||
} catch (IOException e) {
|
||||
LOGGER.info("Failed to load font `" + name + "`, couldn't find resource.");
|
||||
} catch (FontFormatException e) {
|
||||
LOGGER.info("Failed to load font `" + name + "`, bad format.");
|
||||
}
|
||||
return new Font("Arial", Font.PLAIN, 1);
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue