Categories:
Audio (13)
Biotech (29)
Bytecode (36)
Database (77)
Framework (7)
Game (7)
General (507)
Graphics (53)
I/O (35)
IDE (2)
JAR Tools (101)
JavaBeans (21)
JDBC (121)
JDK (426)
JSP (20)
Logging (108)
Mail (58)
Messaging (8)
Network (84)
PDF (97)
Report (7)
Scripting (84)
Security (32)
Server (121)
Servlet (26)
SOAP (24)
Testing (54)
Web (15)
XML (309)
Collections:
Other Resources:
JDK 17 java.desktop.jmod - Desktop Module
JDK 17 java.desktop.jmod is the JMOD file for JDK 17 Desktop module.
JDK 17 Desktop module compiled class files are stored in \fyicenter\jdk-17.0.5\jmods\java.desktop.jmod.
JDK 17 Desktop module compiled class files are also linked and stored in the \fyicenter\jdk-17.0.5\lib\modules JImage file.
JDK 17 Desktop module source code files are stored in \fyicenter\jdk-17.0.5\lib\src.zip\java.desktop.
You can click and view the content of each source code file in the list below.
✍: FYIcenter
⏎ com/sun/imageio/plugins/tiff/TIFFLZWUtil.java
/* * Copyright (c) 2005, 2018, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package com.sun.imageio.plugins.tiff; import java.io.IOException; import javax.imageio.IIOException; class TIFFLZWUtil { public TIFFLZWUtil() { } byte[] srcData; int srcIndex; byte[] dstData; int dstIndex = 0; byte[][] stringTable; int tableIndex, bitsToGet = 9; int nextData = 0; int nextBits = 0; private static final int[] andTable = { 511, 1023, 2047, 4095 }; public byte[] decode(byte[] data, int predictor, int samplesPerPixel, int width, int height) throws IOException { if (data[0] == (byte)0x00 && data[1] == (byte)0x01) { throw new IIOException("TIFF 5.0-style LZW compression is not supported!"); } this.srcData = data; this.srcIndex = 0; this.nextData = 0; this.nextBits = 0; this.dstData = new byte[8192]; this.dstIndex = 0; initializeStringTable(); int code, oldCode = 0; byte[] string; while ((code = getNextCode()) != 257) { if (code == 256) { initializeStringTable(); code = getNextCode(); if (code == 257) { break; } writeString(stringTable[code]); oldCode = code; } else { if (code < tableIndex) { string = stringTable[code]; writeString(string); addStringToTable(stringTable[oldCode], string[0]); oldCode = code; } else { string = stringTable[oldCode]; string = composeString(string, string[0]); writeString(string); addStringToTable(string); oldCode = code; } } } if (predictor == 2) { int count; for (int j = 0; j < height; j++) { count = samplesPerPixel * (j * width + 1); for (int i = samplesPerPixel; i < width * samplesPerPixel; i++) { dstData[count] += dstData[count - samplesPerPixel]; count++; } } } byte[] newDstData = new byte[dstIndex]; System.arraycopy(dstData, 0, newDstData, 0, dstIndex); return newDstData; } /** * Initialize the string table. */ public void initializeStringTable() { stringTable = new byte[4096][]; for (int i = 0; i < 256; i++) { stringTable[i] = new byte[1]; stringTable[i][0] = (byte)i; } tableIndex = 258; bitsToGet = 9; } private void ensureCapacity(int bytesToAdd) { if (dstIndex + bytesToAdd > dstData.length) { byte[] newDstData = new byte[Math.max((int)(dstData.length*1.2f), dstIndex + bytesToAdd)]; System.arraycopy(dstData, 0, newDstData, 0, dstData.length); dstData = newDstData; } } /** * Write out the string just uncompressed. */ public void writeString(byte[] string) { ensureCapacity(string.length); for (int i = 0; i < string.length; i++) { dstData[dstIndex++] = string[i]; } } /** * Add a new string to the string table. */ public void addStringToTable(byte[] oldString, byte newString) { int length = oldString.length; byte[] string = new byte[length + 1]; System.arraycopy(oldString, 0, string, 0, length); string[length] = newString; // Add this new String to the table stringTable[tableIndex++] = string; if (tableIndex == 511) { bitsToGet = 10; } else if (tableIndex == 1023) { bitsToGet = 11; } else if (tableIndex == 2047) { bitsToGet = 12; } } /** * Add a new string to the string table. */ public void addStringToTable(byte[] string) { // Add this new String to the table stringTable[tableIndex++] = string; if (tableIndex == 511) { bitsToGet = 10; } else if (tableIndex == 1023) { bitsToGet = 11; } else if (tableIndex == 2047) { bitsToGet = 12; } } /** * Append {@code newString} to the end of {@code oldString}. */ public byte[] composeString(byte[] oldString, byte newString) { int length = oldString.length; byte[] string = new byte[length + 1]; System.arraycopy(oldString, 0, string, 0, length); string[length] = newString; return string; } // Returns the next 9, 10, 11 or 12 bits public int getNextCode() { // Attempt to get the next code. The exception is caught to make // this robust to cases wherein the EndOfInformation code has been // omitted from a strip. Examples of such cases have been observed // in practice. try { nextData = (nextData << 8) | (srcData[srcIndex++] & 0xff); nextBits += 8; if (nextBits < bitsToGet) { nextData = (nextData << 8) | (srcData[srcIndex++] & 0xff); nextBits += 8; } int code = (nextData >> (nextBits - bitsToGet)) & andTable[bitsToGet - 9]; nextBits -= bitsToGet; return code; } catch (ArrayIndexOutOfBoundsException e) { // Strip not terminated as expected: return EndOfInformation code. return 257; } } }
⏎ com/sun/imageio/plugins/tiff/TIFFLZWUtil.java
Or download all of them as a single archive file:
File name: java.desktop-17.0.5-src.zip File size: 9152233 bytes Release date: 2022-09-13 Download
⇒ JDK 17 java.instrument.jmod - Instrument Module
2023-09-16, 33293👍, 0💬
Popular Posts:
JDK 11 java.compiler.jmod is the JMOD file for JDK 11 Compiler module. JDK 11 Compiler module compil...
Java Architecture for XML Binding (JAXB) is a Java API that allows Java developers to map Java class...
What Is javamail1_1_3.zip? javamail1_1_3.zip is the binary package of JavaMail API 1.1.3 in ZIP form...
Apache BCEL Source Code Files are inside the Apache BCEL source package file like bcel-6.5.0-src.zip...
Where to find answers to frequently asked questions on Downloading and Installing ojdbc.jar - JDBC D...