Mercurial > hg > orthanc-imagej
view ar/com/hjg/pngj/chunks/PngChunkTEXT.java @ 6:da7f11dcc6fd pngj
move
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Fri, 15 Apr 2016 10:36:51 +0200 (2016-04-15) |
parents | com/hjg/pngj/chunks/PngChunkTEXT.java@3f418d4451d6 |
children |
line wrap: on
line source
package ar.com.hjg.pngj.chunks; import ar.com.hjg.pngj.ImageInfo; import ar.com.hjg.pngj.PngjException; /** * tEXt chunk. * <p> * see http://www.w3.org/TR/PNG/#11tEXt */ public class PngChunkTEXT extends PngChunkTextVar { public final static String ID = ChunkHelper.tEXt; public PngChunkTEXT(ImageInfo info) { super(ID, info); } public PngChunkTEXT(ImageInfo info, String key, String val) { super(ID, info); setKeyVal(key, val); } @Override public ChunkRaw createRawChunk() { if (key == null || key.trim().length() == 0) throw new PngjException("Text chunk key must be non empty"); byte[] b = ChunkHelper.toBytes(key + "\0" + val); ChunkRaw chunk = createEmptyChunk(b.length, false); chunk.data = b; return chunk; } @Override public void parseFromRaw(ChunkRaw c) { int i; for (i = 0; i < c.data.length; i++) if (c.data[i] == 0) break; key = ChunkHelper.toString(c.data, 0, i); i++; val = i < c.data.length ? ChunkHelper.toString(c.data, i, c.data.length - i) : ""; } }