int xOff = param.getSubsamplingXOffset(); int yOff = param.getSubsamplingYOffset(); int xSub = param.getSourceXSubsampling();
int gridX = param.getSubsamplingXOffset(); int gridY = param.getSubsamplingYOffset(); srcRegion.translate(-gridX, -gridY);
originalParams.getSourceXSubsampling(), originalParams.getSourceYSubsampling(), originalParams.getSubsamplingXOffset(), originalParams.getSubsamplingYOffset());
/** * XXX */ // Code copied from ImageReader.java private static Rectangle getSourceRegion(ImageReadParam param, int srcWidth, int srcHeight) { Rectangle sourceRegion = new Rectangle(0, 0, srcWidth, srcHeight); if (param != null) { Rectangle region = param.getSourceRegion(); if (region != null) { sourceRegion = sourceRegion.intersection(region); } int subsampleXOffset = param.getSubsamplingXOffset(); int subsampleYOffset = param.getSubsamplingYOffset(); sourceRegion.x += subsampleXOffset; sourceRegion.y += subsampleYOffset; sourceRegion.width -= subsampleXOffset; sourceRegion.height -= subsampleYOffset; } return sourceRegion; }
/** * XXX */ // Code copied from ImageReader.java private static Rectangle getSourceRegion(ImageReadParam param, int srcWidth, int srcHeight) { Rectangle sourceRegion = new Rectangle(0, 0, srcWidth, srcHeight); if (param != null) { Rectangle region = param.getSourceRegion(); if (region != null) { sourceRegion = sourceRegion.intersection(region); } int subsampleXOffset = param.getSubsamplingXOffset(); int subsampleYOffset = param.getSubsamplingYOffset(); sourceRegion.x += subsampleXOffset; sourceRegion.y += subsampleYOffset; sourceRegion.width -= subsampleXOffset; sourceRegion.height -= subsampleYOffset; } return sourceRegion; }
sb.append(" srcXsub:").append(param.getSourceXSubsampling()); sb.append(" srcYsub:").append(param.getSourceYSubsampling()); sb.append(" subXoff:").append(param.getSubsamplingXOffset()); sb.append(" subYoff:").append(param.getSubsamplingYOffset()); sb.append(" srcRegion:").append(param.getSourceRegion());
param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset());
/** Makes a copy of the incoming parameters into the parameter that is used for the nested image reader */ protected void copyReadParam(ImageReadParam src, ImageReadParam dst) { dst.setDestination(src.getDestination()); dst.setSourceRegion(src.getSourceRegion()); dst.setSourceSubsampling(src.getSourceXSubsampling(), src .getSourceYSubsampling(), src.getSubsamplingXOffset(), src .getSubsamplingYOffset()); dst.setDestinationOffset(src.getDestinationOffset()); if (ImageReaderFactory.getInstance().needsImageTypeSpecifier(tsuid)) { dst.setDestinationType(createImageTypeSpecifier()); } //if lossy jpeg2000 and using the jai j2k reader //a workaround for http://java.net/jira/browse/JAI_IMAGEIO_CORE-175 if(J2KIMAGE_READ_PARAM_CLASS != null && J2KIMAGE_READ_PARAM_CLASS.isAssignableFrom(dst.getClass())) { try { J2KIMAGE_READ_PARAM_SET_RESOLUTION.invoke(dst, Integer.MAX_VALUE); } catch (Exception e) { log.info("A Failure occurred attempting to set the resolution for a jai J2KImageReadParam. This may result in degraded image quality.", e); } } }
public static Bitmap subsample(Bitmap src, ImageReadParam param) { if (src == null) throw new IllegalArgumentException("src must not be null"); if (param == null) throw new IllegalArgumentException("param must not be null"); final int xSubsampling = param.getSourceXSubsampling(); final int ySubsampling = param.getSourceYSubsampling(); final int xSubsamplingOffset = param.getSubsamplingXOffset(); final int ySubsamplingOffset = param.getSubsamplingYOffset(); final int dstWidth = (src.getWidth() - xSubsamplingOffset) / xSubsampling; final int dstHeight = (src.getHeight() - ySubsamplingOffset) / ySubsampling; final Bitmap dst = new Bitmap(dstWidth, dstHeight); for (int yDst = 0, ySrc = ySubsamplingOffset; yDst < dst.getHeight(); yDst++, ySrc += ySubsampling) { for (int xDst = 0, xSrc = xSubsamplingOffset; xDst < dst.getWidth(); xDst++, xSrc += xSubsampling) { final byte pixel = src.getPixel(xSrc, ySrc); if (pixel != 0) dst.setPixel(xDst, yDst, pixel); } } return dst; }
public static Bitmap subsample(Bitmap src, ImageReadParam param) { if (src == null) throw new IllegalArgumentException("src must not be null"); if (param == null) throw new IllegalArgumentException("param must not be null"); final int xSubsampling = param.getSourceXSubsampling(); final int ySubsampling = param.getSourceYSubsampling(); final int xSubsamplingOffset = param.getSubsamplingXOffset(); final int ySubsamplingOffset = param.getSubsamplingYOffset(); final int dstWidth = (src.getWidth() - xSubsamplingOffset) / xSubsampling; final int dstHeight = (src.getHeight() - ySubsamplingOffset) / ySubsampling; final Bitmap dst = new Bitmap(dstWidth, dstHeight); for (int yDst = 0, ySrc = ySubsamplingOffset; yDst < dst.getHeight(); yDst++, ySrc += ySubsampling) { for (int xDst = 0, xSrc = xSubsamplingOffset; xDst < dst.getWidth(); xDst++, xSrc += xSubsampling) { final byte pixel = src.getPixel(xSrc, ySrc); if (pixel != 0) dst.setPixel(xDst, yDst, pixel); } } return dst; }
public static Bitmap subsample(Bitmap src, ImageReadParam param) { if (src == null) throw new IllegalArgumentException("src must not be null"); if (param == null) throw new IllegalArgumentException("param must not be null"); final int xSubsampling = param.getSourceXSubsampling(); final int ySubsampling = param.getSourceYSubsampling(); final int xSubsamplingOffset = param.getSubsamplingXOffset(); final int ySubsamplingOffset = param.getSubsamplingYOffset(); final int dstWidth = (src.getWidth() - xSubsamplingOffset) / xSubsampling; final int dstHeight = (src.getHeight() - ySubsamplingOffset) / ySubsampling; final Bitmap dst = new Bitmap(dstWidth, dstHeight); for (int yDst = 0, ySrc = ySubsamplingOffset; yDst < dst .getHeight(); yDst++, ySrc += ySubsampling) { for (int xDst = 0, xSrc = xSubsamplingOffset; xDst < dst .getWidth(); xDst++, xSrc += xSubsampling) { final byte pixel = src.getPixel(xSrc, ySrc); if (pixel != 0) dst.setPixel(xDst, yDst, pixel); } } return dst; }
int xOff = param.getSubsamplingXOffset(); int yOff = param.getSubsamplingYOffset(); int xSub = param.getSourceXSubsampling();
param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); newParam.setSourceBands(param.getSourceBands());
protected void initialize(ImageReadParam param) { if (param.hasController()) setController(param.getController()); setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param .getSourceYSubsampling(), param.getSubsamplingXOffset(), param .getSubsamplingYOffset()); final ImageTypeSpecifier type = param.getDestinationType(); if (type != null) setDestinationType(type); } }
public J2KImageReadParamJava(ImageReadParam param) { super(); // Generic settings. if(param.hasController()) { setController(param.getController()); } setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); setDestinationType(param.getDestinationType()); // J2K settings. J2KImageReadParam j2kParam; if(param instanceof J2KImageReadParam) { j2kParam = (J2KImageReadParam)param; } else { j2kParam = new J2KImageReadParam(); } setDecodingRate(j2kParam.getDecodingRate()); setResolution(j2kParam.getResolution()); }
public J2KImageReadParamJava(ImageReadParam param) { super(); // Generic settings. if(param.hasController()) { setController(param.getController()); } setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); setDestinationType(param.getDestinationType()); // J2K settings. J2KImageReadParam j2kParam; if(param instanceof J2KImageReadParam) { j2kParam = (J2KImageReadParam)param; } else { j2kParam = new J2KImageReadParam(); } setDecodingRate(j2kParam.getDecodingRate()); setResolution(j2kParam.getResolution()); }
public J2KImageReadParamJava(ImageReadParam param) { super(); // Generic settings. if(param.hasController()) { setController(param.getController()); } setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); setDestinationType(param.getDestinationType()); // J2K settings. J2KImageReadParam j2kParam; if(param instanceof J2KImageReadParam) { j2kParam = (J2KImageReadParam)param; } else { j2kParam = new J2KImageReadParam(); } setDecodingRate(j2kParam.getDecodingRate()); setResolution(j2kParam.getResolution()); }
public J2KImageReadParamJava(ImageReadParam param) { super(); // Generic settings. if(param.hasController()) { setController(param.getController()); } setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); setDestinationType(param.getDestinationType()); // J2K settings. J2KImageReadParam j2kParam; if(param instanceof J2KImageReadParam) { j2kParam = (J2KImageReadParam)param; } else { j2kParam = new J2KImageReadParam(); } setDecodingRate(j2kParam.getDecodingRate()); setResolution(j2kParam.getResolution()); }
public J2KImageReadParamJava(ImageReadParam param) { super(); // Generic settings. if(param.hasController()) { setController(param.getController()); } setSourceRegion(param.getSourceRegion()); setSourceBands(param.getSourceBands()); setDestinationBands(param.getDestinationBands()); setDestination(param.getDestination()); setDestinationOffset(param.getDestinationOffset()); setSourceSubsampling(param.getSourceXSubsampling(), param.getSourceYSubsampling(), param.getSubsamplingXOffset(), param.getSubsamplingYOffset()); setDestinationType(param.getDestinationType()); // J2K settings. J2KImageReadParam j2kParam; if(param instanceof J2KImageReadParam) { j2kParam = (J2KImageReadParam)param; } else { j2kParam = new J2KImageReadParam(); } setDecodingRate(j2kParam.getDecodingRate()); setResolution(j2kParam.getResolution()); }
.getSourceYSubsampling(), param.getSubsamplingXOffset(), param .getSubsamplingYOffset());