亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? scalecopy.java

?? 這是<java高級實用教程>的電子版書,內容深入淺出啊,有實例有解析,不錯的
?? JAVA
字號:
// ScaleCopy - an ImageFilter that scales by pixel copying
//
// Copyright (C) 1996 by Jef Poskanzer <jef@acme.com>.  All rights reserved.
//
// Redistribution and use in source and binary forms, with or without
// modification, are permitted provided that the following conditions
// are met:
// 1. Redistributions of source code must retain the above copyright
//    notice, this list of conditions and the following disclaimer.
// 2. Redistributions in binary form must reproduce the above copyright
//    notice, this list of conditions and the following disclaimer in the
//    documentation and/or other materials provided with the distribution.
//
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
// ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
// ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
// FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
// OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
// HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
// SUCH DAMAGE.
//
// Visit the ACME Labs Java page for up-to-date versions of this and other
// fine Java utilities: http://www.acme.com/java/

package Acme.JPM.Filters;

import java.awt.image.*;

/// An ImageFilter that scales by pixel copying.
// <P>
// Scales an image by copying pixels.
// If the image is being enlarged, pixels get replicated;
// if the image is being shrunk, pixels get dropped.
// The output uses the same color model as the input.
// For enlarging, this filter is slightly slower than Enlarge due
// to the floating-point arithmetic;
// for shrinking, it's much faster than Shrink, but
// the results aren't as nice.
// <P>
// <A HREF="/resources/classes/Acme/JPM/Filters/ScaleCopy.java">Fetch the software.</A><BR>
// <A HREF="/resources/classes/Acme.tar.gz">Fetch the entire Acme package.</A>
// <P>
// @see Enlarge
// @see Shrink

public class ScaleCopy extends ImageFilterPlus
    {

    private double xScale, yScale;
    private int newWidth, newHeight;

    /// Constructor, same X and Y scale factor.
    public ScaleCopy( ImageProducer producer, double scale )
	{
	this( producer, scale, scale );
	}

    /// Constructor, different X and Y scale factors.
    public ScaleCopy( ImageProducer producer, double xScale, double yScale )
	{
	super( producer );
	this.xScale = xScale;
	this.yScale = yScale;
	}


    public void setDimensions( int width, int height )
	{
	newWidth = (int) ( width * xScale );
	newHeight = (int) ( height * yScale );
	consumer.setDimensions( newWidth, newHeight );
	}

    public void setPixels( int x, int y, int w, int h, ColorModel model, byte[] pixels, int off, int scansize )
	{
	int newX = Math.min( (int) ( x * xScale ), newWidth - 1 );
	int newY = Math.min( (int) ( y * yScale ), newHeight - 1 );
	int newW = Math.max( (int) ( w * xScale ), 1 );
	if ( newX + newW > newWidth )
	    newW = newWidth - newX;
	int newH = Math.max( (int) ( h * yScale ), 1 );
	if ( newY + newH > newHeight )
	    newH = newHeight - newY;
	byte[] newPixels = new byte[newW * newH];
	for ( int newRow = 0; newRow < newH; ++newRow )
	    {
	    int row = (int) ( newRow / yScale );
	    if ( row >= h )
		continue;
	    for ( int newCol = 0; newCol < newW; ++newCol )
		{
		int col = (int) ( newCol / xScale );
		if ( col >= w )
		    continue;
		newPixels[newRow * newW + newCol] =
		    pixels[row * scansize + off + col];
		}
	    }
	consumer.setPixels( newX, newY, newW, newH, model, newPixels, 0, newW );
	}

    public void setPixels( int x, int y, int w, int h, ColorModel model, int[] pixels, int off, int scansize )
	{
	int newX = Math.min( (int) ( x * xScale ), newWidth - 1 );
	int newY = Math.min( (int) ( y * yScale ), newHeight - 1 );
	int newW = Math.max( (int) ( w * xScale ), 1 );
	if ( newX + newW > newWidth )
	    newW = newWidth - newX;
	int newH = Math.max( (int) ( h * yScale ), 1 );
	if ( newY + newH > newHeight )
	    newH = newHeight - newY;
	int[] newPixels = new int[newW * newH];
	for ( int newRow = 0; newRow < newH; ++newRow )
	    {
	    int row = (int) ( newRow / yScale );
	    if ( row >= h )
		continue;
	    for ( int newCol = 0; newCol < newW; ++newCol )
		{
		int col = (int) ( newCol / xScale );
		if ( col >= w )
		    continue;
		newPixels[newRow * newW + newCol] =
		    pixels[row * scansize + off + col];
		}
	    }
	consumer.setPixels( newX, newY, newW, newH, model, newPixels, 0, newW );
	}


    // Main routine for command-line interface.
    public static void main( String[] args )
	{
	ImageFilterPlus filter = null;
	if ( args.length == 1 )
	    filter = new ScaleCopy( null,
		Double.valueOf( args[0] ).doubleValue() );
	else if ( args.length == 2 )
	    filter = new ScaleCopy( null,
		Double.valueOf( args[0] ).doubleValue(),
		Double.valueOf( args[1] ).doubleValue() );
	else
	    usage();
	System.exit( 
	    ImageFilterPlus.filterStream( System.in, System.out, filter ) );
	}
    
    private static void usage()
	{
	System.err.println( "usage: ScaleCopy scale" );
	System.err.println( "or:    ScaleCopy xScale yScale" );
	System.exit( 1 );
	}

    }

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
亚洲高清视频在线| 韩国毛片一区二区三区| 久久一夜天堂av一区二区三区| 日本电影欧美片| 成人18视频日本| 高清av一区二区| 国产成人在线色| 岛国av在线一区| 美女网站一区二区| 精品国产乱码久久| 亚洲婷婷综合色高清在线| 777亚洲妇女| 91精品欧美福利在线观看| 欧美三级在线播放| 欧美日本在线一区| 欧美电影在线免费观看| 9191精品国产综合久久久久久 | 国产一区二区免费在线| 美腿丝袜亚洲三区| 韩国av一区二区三区四区 | 久久精品欧美日韩精品| 久久久精品免费观看| 国产免费久久精品| 亚洲乱码中文字幕| 一区二区不卡在线视频 午夜欧美不卡在| 国产精品乱人伦中文| 在线免费av一区| 天天综合色天天综合| 人人爽香蕉精品| 国内外成人在线| 99riav久久精品riav| 欧美最猛性xxxxx直播| 91麻豆精品久久久久蜜臀| 精品国产一区二区国模嫣然| 欧美国产一区二区| 亚洲成人精品一区| 国产一区二区三区四区五区美女| av影院午夜一区| 精品1区2区3区| 精品国内片67194| 亚洲视频在线一区二区| 日本视频中文字幕一区二区三区| 国产大陆精品国产| 欧美视频精品在线| 国产91高潮流白浆在线麻豆 | 欧美日本一区二区| 久久综合久久99| 一区二区三区日韩欧美精品 | 国产日韩高清在线| 亚洲大片精品永久免费| 国产高清在线精品| 6080国产精品一区二区| 亚洲欧洲制服丝袜| 国产一区二区精品久久99 | 男人的j进女人的j一区| av激情亚洲男人天堂| 欧美大片一区二区| 一二三四社区欧美黄| 国产91在线观看| 日韩亚洲欧美成人一区| 夜色激情一区二区| 成人免费看视频| 久久综合久久综合久久| 日韩av一区二区在线影视| av高清久久久| 国产精品区一区二区三| 蜜臂av日日欢夜夜爽一区| 免费观看成人鲁鲁鲁鲁鲁视频| 久久精品国产77777蜜臀| 日本精品视频一区二区| 国产精品久久久久久久久动漫| 美女在线视频一区| 欧美一区二区三区公司| 亚洲成人一区二区| 欧美三级韩国三级日本三斤| 亚洲天堂精品视频| 成人激情校园春色| 亚洲手机成人高清视频| 成人激情午夜影院| 国产欧美一区二区精品秋霞影院| 极品尤物av久久免费看| 日韩一区二区精品| 青草国产精品久久久久久| 欧美一区二区在线观看| 免费成人在线播放| 欧美不卡在线视频| 久久99久久久欧美国产| 26uuu精品一区二区在线观看| 九色综合狠狠综合久久| 日韩欧美一级在线播放| 狠狠色丁香婷婷综合久久片| 精品国内二区三区| 成人av电影免费在线播放| 国产精品伦理在线| 在线精品视频一区二区三四| 一级中文字幕一区二区| 欧美美女喷水视频| 久久国产剧场电影| 欧美激情一区三区| 91网页版在线| 午夜国产精品一区| 欧美本精品男人aⅴ天堂| 高清成人在线观看| 亚洲国产日产av| 欧美电影免费观看高清完整版在 | 天堂av在线一区| 欧美mv和日韩mv国产网站| 黑人巨大精品欧美一区| 中文字幕乱码久久午夜不卡 | 成人欧美一区二区三区黑人麻豆| 国产精品第五页| 国产精品一区二区91| 亚洲色图在线视频| 制服丝袜亚洲精品中文字幕| 国产一区三区三区| 亚洲欧美另类小说| 日韩一区二区在线看| 99精品国产热久久91蜜凸| 香蕉久久一区二区不卡无毒影院 | 久久综合狠狠综合| 91免费看片在线观看| 日韩精品福利网| 国产欧美一区二区三区沐欲| 欧美日韩黄色影视| 成人h动漫精品| 免费观看30秒视频久久| 亚洲精品综合在线| 欧美精品一区二区高清在线观看| 91在线无精精品入口| 韩国av一区二区| 日日夜夜精品视频天天综合网| 国产精品私人自拍| 欧美成人一区二区三区片免费| 色天天综合色天天久久| 国产精品一二三在| 美女网站一区二区| 午夜精品一区二区三区免费视频| 日本一区二区三区国色天香 | 成人午夜大片免费观看| 日韩av网站在线观看| 亚洲欧美日韩国产成人精品影院| 欧美va在线播放| 欧美日韩在线播放| 日本电影欧美片| 99精品桃花视频在线观看| 国产在线不卡一卡二卡三卡四卡| 天天做天天摸天天爽国产一区 | 亚洲国产一区二区三区| 中文字幕一区二区三区色视频| 精品国产99国产精品| 欧美日韩精品是欧美日韩精品| 91麻豆6部合集magnet| 成人精品视频.| 成人免费观看av| 成人毛片在线观看| 懂色av一区二区三区免费看| 国产一区二区视频在线| 国产精品一区二区久久精品爱涩| 国产精品一区二区三区乱码| 国产一区二区电影| 成人美女视频在线看| 9人人澡人人爽人人精品| 成人午夜在线视频| www.爱久久.com| 在线影视一区二区三区| 色噜噜狠狠成人中文综合| 色婷婷香蕉在线一区二区| 欧美丝袜第三区| 2020日本不卡一区二区视频| 久久人人超碰精品| 久久国产视频网| 久久精品国产网站| 久草这里只有精品视频| 国产精品 欧美精品| 成人免费av在线| 色综合久久久久久久久久久| 色激情天天射综合网| 在线观看一区不卡| 欧美一级在线免费| 久久久99久久精品欧美| 专区另类欧美日韩| 日韩精品一卡二卡三卡四卡无卡| 美女性感视频久久| av一本久道久久综合久久鬼色| 欧美三区在线观看| 亚洲精品一区二区三区香蕉| 国产精品免费丝袜| 天天av天天翘天天综合网| 久久99最新地址| 91丝袜国产在线播放| 日韩一级免费观看| 国产精品久久久久久久久搜平片| 亚洲综合激情网| 久久成人麻豆午夜电影| 99久久精品免费看国产| 亚洲精品videosex极品| 成人黄色小视频| 日韩高清一级片| 成人黄色a**站在线观看| 欧美日韩国产区一|