forked from netology-code/java-diplom
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathTextGraphicsConverter.java
More file actions
45 lines (39 loc) · 2.46 KB
/
Copy pathTextGraphicsConverter.java
File metadata and controls
45 lines (39 loc) · 2.46 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
package ru.netology.graphics.image;
import java.io.IOException;
import java.net.MalformedURLException;
public interface TextGraphicsConverter {
/**
* Конвертация изображения, переданного как урл, в текстовую графику.
* @param url урл изображения
* @return текст, представляющий собой текстовую графику переданного изображения
* @throws IOException
* @throws BadImageSizeException Если соотношение сторон изображения слишком большое
*/
String convert(String url) throws IOException, BadImageSizeException;
/**
* Устанавливает максимальную ширину результирующего изображения в "текстовых пикселях".
* Если исходное изображение имеет характеристики, превышающие максимальные, оно сжимается
* с сохранением пропорций.
* @param width максимальная ширина текстовых картинок
*/
void setMaxWidth(int width);
/**
* Устанавливает максимальную высоту результирующего изображения в "текстовых пикселях".
* Если исходное изображение имеет характеристики, превышающие максимальные, оно сжимается
* с сохранением пропорций.
* @param height максимальная высоту текстовых картинок
*/
void setMaxHeight(int height);
/**
* Устанавливает максимально допустимое соотношение сторон исходного изображения.
* Если исходное изображение имеет характеристики, превышающие максимальные,
* при конвертации выбрасывается исключение.
* @param maxRatio
*/
void setMaxRatio(double maxRatio);
/**
* Устанавливает символьную цветовую схему, которую будет использовать конвертер
* @param schema
*/
void setTextColorSchema(TextColorSchema schema);
}