diff options
Diffstat (limited to 'src/jogl/classes/jogamp/opengl/util/pngj/chunks/PngChunkTEXT.java')
-rw-r--r-- | src/jogl/classes/jogamp/opengl/util/pngj/chunks/PngChunkTEXT.java | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/src/jogl/classes/jogamp/opengl/util/pngj/chunks/PngChunkTEXT.java b/src/jogl/classes/jogamp/opengl/util/pngj/chunks/PngChunkTEXT.java new file mode 100644 index 000000000..c535fe34a --- /dev/null +++ b/src/jogl/classes/jogamp/opengl/util/pngj/chunks/PngChunkTEXT.java @@ -0,0 +1,34 @@ +package jogamp.opengl.util.pngj.chunks;
+
+import jogamp.opengl.util.pngj.ImageInfo;
+import jogamp.opengl.util.pngj.PngHelper;
+
+public class PngChunkTEXT extends PngChunkTextVar {
+ public PngChunkTEXT(ImageInfo info) {
+ super(ChunkHelper.tEXt, info);
+ }
+
+ @Override
+ public ChunkRaw createChunk() {
+ if (val.isEmpty() || key.isEmpty())
+ return null;
+ byte[] b = (key + "\0" + val).getBytes(PngHelper.charsetLatin1);
+ ChunkRaw chunk = createEmptyChunk(b.length, false);
+ chunk.data = b;
+ return chunk;
+ }
+
+ @Override
+ public void parseFromChunk(ChunkRaw c) {
+ String[] k = (new String(c.data, PngHelper.charsetLatin1)).split("\0");
+ key = k[0];
+ val = k[1];
+ }
+
+ @Override
+ public void cloneDataFromRead(PngChunk other) {
+ PngChunkTEXT otherx = (PngChunkTEXT) other;
+ key = otherx.key;
+ val = otherx.val;
+ }
+}
|