代码和标记的示例图像Q& As

时间:2013-10-06 13:57:57

标签: java javascript css image

准备涉及图片的MCVE / SSCCE时,直接访问图片非常有用。

涵盖大多数问题的图像类型包括:多种颜色或形状的小图像,带/不带透明度的动画GIF,带有“成对”图片的JPEG图像。可用于图像过渡,图块集,精灵表..

是否有任何小型(30KB以下),现场,许可证和我们可以为这些类型的示例链接到免版税图像吗?

1 个答案:

答案 0 :(得分:68)

以下是一些常用的示例图像,主要来自SO上的现有答案。

图标

使用Java生成的

简单几何形状最初在this answer中看到。它包括一个基于Java的界面,用于定义URL并使其易于访问。

详细信息: 32x32像素PNG(4种颜色x 5种形状),部分透明(沿边缘)。

类别:

  

                          
                             

精灵表

最初在this answer上看到的

棋子,其中包含2个其他精灵集(不同颜色的相同图片)。

详情:384x128像素(每个精灵64x64像素)PNG,部分透明。

类别:

  

动画

GIF是唯一支持动画的图像格式。以下是一些例子。

类别:

固体BG

动画虚线边框,如this answer中所示。

详细信息: 100x30像素,填充BG(无透明度)

  

缩放星星,如this answer所示,最初是作为屏幕保护程序的“屏幕截图”开发的。

详细信息: 160x120像素,已填充BG(无透明度)

  

动画水,见this answerAnimating Tiles In My Game

详细信息:60x60像素,填充BG(无透明度)

  

透明BG

轨道动画,最初是为1.1C开发的。 “内部”行星的轨道(从水星到木星,在小行星带的厚处显示一个额外的轨道)。在黑暗的BG上更好。

详细信息:450x450&具有透明度的150x150像素GIF动画。

  

图片

日出& moonset 在澳大利亚悉尼的CBD上 Sunset&金星在望远镜上在澳大利亚堪培拉附近的Mt Stromlo。

类别: +图片转换

详情:480x320 px JPEGs x 4.(此处显示为1/2尺寸。)

  


  

悉尼东南郊区的黎明全景

类别: (滚动)

详情:1474x436 px JPEG。

  

Dawn Panorama

瓦片

这个墨卡托地球地图可左/右平铺。最初见于this answer。答案还包括第二个版本的图像,显​​示赤道的半透明线(不在中心,但显着低于它)。

详细信息: 640x316像素(在底部到中心赤道加44像素)PNG,透明BG。

类别: (滚动)

  

提示

要获取图片的网址,您可以在浏览器中看到图片上的“上下文点击”,然后执行以下任一操作:

  • 显示属性。可以从显示的对话框中复制URL。
  • 查看图片。从浏览器地址栏复制URL。

可替换地:

  • 使用浏览器“show source”并从HTML中复制它。
  • 对于那些有足够代表的人。 (100+,编辑社区Wiki答案),转到edit the answer并从文本中提取URL。

代码

下面是一个Java类,它分割了棋子精灵表,适合粘贴到MCVE中:

import java.awt.image.*;
import javax.imageio.*;
import java.net.*;
import java.io.*;
import java.util.*;

public final class ChessSprites {
    private ChessSprites() {}
    public static final int SIZE = 64;
    public static final BufferedImage SHEET;
    static {
        try {
            // see https://stackoverflow.com/a/19209651/2891664
            SHEET = ImageIO.read(new URL("https://i.stack.imgur.com/memI0.png"));
        } catch (IOException x) {
            throw new UncheckedIOException(x);
        }
    }
    public static final BufferedImage GOLD_QUEEN    = SHEET.getSubimage(0 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_QUEEN  = SHEET.getSubimage(0 * SIZE, SIZE, SIZE, SIZE);
    public static final BufferedImage GOLD_KING     = SHEET.getSubimage(1 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_KING   = SHEET.getSubimage(1 * SIZE, SIZE, SIZE, SIZE);
    public static final BufferedImage GOLD_ROOK     = SHEET.getSubimage(2 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_ROOK   = SHEET.getSubimage(2 * SIZE, SIZE, SIZE, SIZE);
    public static final BufferedImage GOLD_KNIGHT   = SHEET.getSubimage(3 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_KNIGHT = SHEET.getSubimage(3 * SIZE, SIZE, SIZE, SIZE);
    public static final BufferedImage GOLD_BISHOP   = SHEET.getSubimage(4 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_BISHOP = SHEET.getSubimage(4 * SIZE, SIZE, SIZE, SIZE);
    public static final BufferedImage GOLD_PAWN     = SHEET.getSubimage(5 * SIZE, 0,    SIZE, SIZE);
    public static final BufferedImage SILVER_PAWN   = SHEET.getSubimage(5 * SIZE, SIZE, SIZE, SIZE);
    public static final List<BufferedImage> SPRITES =
        Collections.unmodifiableList(Arrays.asList(GOLD_QUEEN,  SILVER_QUEEN,
                                                   GOLD_KING,   SILVER_KING,
                                                   GOLD_ROOK,   SILVER_ROOK,
                                                   GOLD_KNIGHT, SILVER_KNIGHT,
                                                   GOLD_BISHOP, SILVER_BISHOP,
                                                   GOLD_PAWN,   SILVER_PAWN));
}