Jump to content

SUBIECTE NOI
« 1 / 5 »
RSS
Amenintat cu moartea de un numar ...

La multi ani @AndReW99!

Alegere masina £15000 uk

TVR vrea sa lanseze o platforma d...
 Strategie investie pe termen lung...

Modulator FM ptr auto alimentat p...

orange cablu f.o. - internet fara...

Robinet care comuta traseul
 A fost lansata Fedora 40

Samsung S24 plus

Imi iau un Dell? (Vostro vs others)

Abonati Qobuz?
 transport -tren

Platforma electronica de eviden&#...

Cot cu talpa montat stramb in per...

Sfat achizitie sistem audio pentr...
 

Problema poza

- - - - -
  • Please log in to reply
8 replies to this topic

#1
piramyd

piramyd

    Member

  • Grup: Members
  • Posts: 346
  • Înscris: 12.04.2007
Salut,

Am incercat in mai multe moduri sa incarc JPG-ul atasat la post, intr-un BufferImage si dup-aia sa-l salvez redimensionat.
Nu merge nici sa-l salvez simplu, pentru ca nu se incarca cum trebuie: are alte culori.
Poate cineva sa ma ajute?

Daca il deschid in paint si il salvez tot ca JPG, merge.

Nu inteleg care e faza.

[ http://apps4glass.ro/x/Logo_1.jpg - Pentru incarcare in pagina (embed) Click aici ]

Edited by piramyd, 03 June 2015 - 10:41.


#2
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,437
  • Înscris: 10.08.2005
O fi defecta poza, nici pe forum nu apare.

View Postpiramyd, on 03 iunie 2015 - 10:25, said:

Nu merge nici sa-l salvez simplu, pentru ca nu se incarca cum trebuie: are alte culori.
in ce sens are alte culori?
Imaginea de baza e aceasi?

#3
piramyd

piramyd

    Member

  • Grup: Members
  • Posts: 346
  • Înscris: 12.04.2007
Da, parca ar fi pe 24 de biti in loc de 32, sau parca nu ar fi RGB, nush, parca ar fi YCbCr, habar nu am ce are.
Am incercat mai multe chestii.
O sa o pun pe net si o sa pun link-ul aici. In windows image viewer merge, in paint merge, in brwser merge...

Acum se vede?

#4
MarianG

MarianG

    be that as it may

  • Grup: Moderators
  • Posts: 31,437
  • Înscris: 10.08.2005
Bine, dar tu cum redimensionzi imaginea?

Edited by MarianG, 03 June 2015 - 10:48.


#5
STARTREK1

STARTREK1

    căutător pe gugăl

  • Grup: Senior Members
  • Posts: 11,178
  • Înscris: 27.06.2007
la ce dimensiune vrei sa-l redimensionezi si in ce format?

#6
MooF2010

MooF2010

    Senior Member

  • Grup: Senior Members
  • Posts: 5,335
  • Înscris: 24.05.2010
Ce dimensiuni vrei? Care sunt dimensiunile originale?

#7
piramyd

piramyd

    Member

  • Grup: Members
  • Posts: 346
  • Înscris: 12.04.2007
Redimentionez la vreo 200x200 pixeli.
JPG sau PNG oricare e bun.

Eu am fisierul intr-un array de byte.

Problema e ca imi da eroare la ultima linie "unknown format" daca citesc asa:

ImageInputStream stream = null;
		ImageReader reader = null;
		BufferedImage result = null;
		try {
			stream = ImageIO.createImageInputStream(new ByteArrayInputStream(data));
		   
		   
			reader = ImageIO.getImageReaders(stream).next();
			reader.setInput(stream, true);
			ImageReadParam param = reader.getDefaultReadParam();
			ImageTypeSpecifier typeToUse = null;
		   
			for (Iterator<?> i = reader.getImageTypes(0); i.hasNext();) {
				ImageTypeSpecifier type = (ImageTypeSpecifier) i.next();
				if (type.getColorModel().getColorSpace().isCS_sRGB()) {
					typeToUse = type;
				}
			}
			if (typeToUse != null) {
				param.setDestinationType(typeToUse);
			}
			try{
			
			 result = reader.read(0, param);


Deci incerc sa citesc asa:

RenderedOp source = JAI.create("stream", new ByteArraySeekableStream(data));
				((OpImage)source.getRendering()).setTileCache(null);
				BufferedImage temp = source.getAsBufferedImage();

iar aici o citeste, dar are alte culori.

#8
piramyd

piramyd

    Member

  • Grup: Members
  • Posts: 346
  • Înscris: 12.04.2007
Nimic?

#9
gheghe4

gheghe4

    New Member

  • Grup: Junior Members
  • Posts: 5
  • Înscris: 24.06.2015
Din cate vad problema este cu jpeg-ul respectiv (nu este intr-un format suportat de clasele standard din Java).

Incearca o alta imagine (una intr-un format standard cu codul urmator) si ar trebui sa mearga (atat cu decoderul din pachetele de SUN cat si cu liniile comentate ImageIO):

public static void main(String[] args) throws Exception {
		BufferedImage image = loadImageFromFile("path\\Logo_1.jpeg");
		BufferedImage resizedImage = resizeImage(image, 1333 / 2, 589 / 2);
		saveImageToFile(resizedImage, "path\\Logo_2.jpg");
	}
	private static void saveImageToFile(BufferedImage resizedImage, String filePath) {
		try (OutputStream outputStream = new BufferedOutputStream(new FileOutputStream(filePath))) {
			//ImageIO.write(resizedImage, "JPEG", outputStream);
			JPEGCodec.createJPEGEncoder(outputStream).encode(resizedImage);
		} catch (IOException e) {
			throw new RuntimeException("Failed to save image tp file " + filePath, e);
		}
	}
	public static BufferedImage loadImageFromFile(String filePath) {
		try (InputStream inputStream = new BufferedInputStream(new FileInputStream(filePath))) {
			//return ImageIO.read(inputStream);
			return JPEGCodec.createJPEGDecoder(inputStream).decodeAsBufferedImage();
		} catch (IOException e) {
			throw new RuntimeException("Failed to load image from file " + filePath, e);
		}
	}
	public static BufferedImage resizeImage(BufferedImage originalImage, int scaledWidth, int scaledHeight) {
		BufferedImage resizedImage = new BufferedImage(scaledWidth, scaledHeight, originalImage.getType());
		Graphics2D graphics = resizedImage.createGraphics();
		graphics.drawImage(originalImage, 0, 0, scaledWidth, scaledHeight, null);
		graphics.dispose();
		return resizedImage;
	}


Totusi cu imaginea ta nu va merge, poate te ajuta urmatorul link (aparent e aceeasi problema) http://stackoverflow...132556#12132556

Anunturi

Bun venit pe Forumul Softpedia!

0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

Forumul Softpedia foloseste "cookies" pentru a imbunatati experienta utilizatorilor Accept
Pentru detalii si optiuni legate de cookies si datele personale, consultati Politica de utilizare cookies si Politica de confidentialitate