java psd 转jpg_Java ImageFormats.PSD属性代码示例

@Override

public ImageInfo getImageInfo(final ByteSource byteSource, final Map params)

throws ImageReadException, IOException {

final PsdImageContents imageContents = readImageContents(byteSource);

// ImageContents imageContents = readImage(byteSource, false);

if (imageContents == null) {

throw new ImageReadException("PSD: Couldn't read blocks");

}

final PsdHeaderInfo header = imageContents.header;

if (header == null) {

throw new ImageReadException("PSD: Couldn't read Header");

}

final int width = header.columns;

final int height = header.rows;

final List comments = new ArrayList<>();

// TODO: comments...

int BitsPerPixel = header.depth * getChannelsPerMode(header.mode);

// System.out.println("header.Depth: " + header.Depth);

// System.out.println("header.Mode: " + header.Mode);

// System.out.println("getChannelsPerMode(header.Mode): " +

// getChannelsPerMode(header.Mode));

if (BitsPerPixel < 0) {

BitsPerPixel = 0;

}

final ImageFormat format = ImageFormats.PSD;

final String formatName = "Photoshop";

final String mimeType = "image/x-photoshop";

// we ought to count images, but don't yet.

final int numberOfImages = -1;

// not accurate ... only reflects first

final boolean progressive = false;

final int physicalWidthDpi = 72;

final float physicalWidthInch = (float) ((double) width / (double) physicalWidthDpi);

final int physicalHeightDpi = 72;

final float physicalHeightInch = (float) ((double) height / (double) physicalHeightDpi);

final String formatDetails = "Psd";

final boolean transparent = false; // TODO: inaccurate.

final boolean usesPalette = header.mode == COLOR_MODE_INDEXED;

final ImageInfo.ColorType colorType = ImageInfo.ColorType.UNKNOWN;

ImageInfo.CompressionAlgorithm compressionAlgorithm;

switch (imageContents.Compression) {

case 0:

compressionAlgorithm = ImageInfo.CompressionAlgorithm.NONE;

break;

case 1:

compressionAlgorithm = ImageInfo.CompressionAlgorithm.PSD;

break;

default:

compressionAlgorithm = ImageInfo.CompressionAlgorithm.UNKNOWN;

}

return new ImageInfo(formatDetails, BitsPerPixel, comments,

format, formatName, height, mimeType, numberOfImages,

physicalHeightDpi, physicalHeightInch, physicalWidthDpi,

physicalWidthInch, width, progressive, transparent,

usesPalette, colorType, compressionAlgorithm);

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值