Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.11.2012, 00:10   #1
shiftseo
Новичок
Джуниор
 
Регистрация: 06.09.2010
Сообщений: 2
По умолчанию Не могу разобраться с очень нужной библиотекой, а точнее с её запуском

Всем привет, с джавой не особо, имеется библиотека Java, в нет бимс закинул всё пакуется и и компилируется, но не получается увидеть и посомтреть, т.к. нет главного класса, и не знаю что вызывать подскажите

Вроде вот основной контенер, вопрос только в топ как его вызвать, что бы запустить
PHP код:
package psd.model;

import java.awt.image.BufferedImage;
import java.io.*;
import java.util.*;

import psd.parser.*;
import psd.parser.header.*;
import psd.parser.imagedata.ImageDataSectionHandler;
import psd.parser.layer.*;
import psd.util.BufferedImageBuilder;


public class 
Psd implements LayersContainer {
    private 
Header header;
    private List<
Layerlayers = new ArrayList<Layer>();
    private 
BufferedImage image;
    private 
String name;

    public 
Psd(File psdFilethrows IOException {
        
name psdFile.getName();
        final 
byte[][] channels = new byte[3][];

        
PsdFileParser parser = new PsdFileParser();
        
parser.getHeaderSectionParser().setHandler(new HeaderSectionHandler() {
            @
Override
            
public void headerLoaded(Header header) {
                
Psd.this.header header;
            }
        });

        final List<
LayerfullLayersList = new ArrayList<Layer>();
        
parser.getLayersSectionParser().setHandler(new LayersSectionHandler() {
            @
Override
            
public void createLayer(LayerParser parser) {
                
fullLayersList.add(new Layer(parser));
            }
        });

        
parser.getImageDataSectionParser().setHandler(new ImageDataSectionHandler() {
            @
Override
            
public void channelLoaded(int channelIdbyte[] channelData) {
                if (
channelId >= && channelId 3) {
                    
channels[channelId] = channelData;
                }
            }
        });
        
        
BufferedInputStream stream = new BufferedInputStream(new FileInputStream(psdFile));
        
parser.parse(stream);
        
stream.close();

        
layers makeLayersHierarchy(fullLayersList);

        if (
parser.getHeaderSectionParser().getHeader().getColorMode() == ColorMode.GRAYSCALE) {
            
channels[1] = channels[2] = channels[0];
        }
        
image = new BufferedImageBuilder(channelsheader.getWidth(), header.getHeight()).makeImage();
    }

    private List<
LayermakeLayersHierarchy(List<Layerlayers) {
        
LinkedList<LinkedList<Layer>> layersStack = new LinkedList<LinkedList<Layer>>();
        
ArrayList<LayerrootLayers = new ArrayList<Layer>();
        for (
Layer layer layers) {
            switch (
layer.getType()) {
            case 
HIDDEN: {
                
layersStack.addFirst(new LinkedList<Layer>());
                break;
            }
            case 
FOLDER: {
                
assert !layersStack.isEmpty();
                
LinkedList<LayerfolderLayers layersStack.removeFirst();
                for (
Layer l folderLayers) {
                    
layer.addLayer(l);
                }
            }
                
// break isn't needed
            
case NORMAL: {
                if (
layersStack.isEmpty()) {
                    
rootLayers.add(layer);
                } else {
                    
layersStack.getFirst().add(layer);
                }
                break;
            }
            default:
                
assert false;
            }
        }
        return 
rootLayers;
    }

    public 
int getWidth() {
        return 
header.getWidth();
    }

    public 
int getHeight() {
        return 
header.getHeight();
    }
    
    public 
BufferedImage getImage() {
        return 
image;
    }

    @
Override
    
public Layer getLayer(int index) {
        return 
layers.get(index);
    }

    @
Override
    
public int indexOfLayer(Layer layer) {
        return 
layers.indexOf(layer);
    }

    @
Override
    
public int getLayersCount() {
        return 
layers.size();
    }

    @
Override
    
public String toString() {
        return 
name;
    }


Последний раз редактировалось shiftseo; 27.11.2012 в 00:19.
shiftseo вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Ребята не могу написать прогу на BP7....точнее не работат ламерок))) Паскаль, Turbo Pascal, PascalABC.NET 5 14.01.2011 19:45
не могу найти ошибку,точнее как исправить!(Задание с файлами) Ксения Вадимовна)) Помощь студентам 0 06.12.2010 22:39
помогите разобраться с массивами.очень нужно катя@90 Помощь студентам 8 16.11.2008 13:48
Помогите разобраться в двух вещах очень надо ( Droid Win Api 2 06.11.2008 18:31