I have a search icon at 2kb. I open in Photoshop, reduce it's dimensions to half, and the size comes out as 4kb.
Any idea what I can do to reduce the size when saving and reducing the dimensions? Not sure what's causing this.
Thank you!
When object is a vector it cost low space in the photoshopfile.
you can use png8 instead of png24 to save a lot of bytes
Related
We tried to test the performance of two images on site’e homepage. We tested one image then the other one. Now the issue is the image which is having large size, better quality as well as large dimensions is giving us better speed results as compared to the image having small size and less quality even though it should have been opposite to it but help me figure out why is that. The image is the first image on site’s homepage.
Speed results: https://pagespeed.web.dev/report?url=https%3A%2F%2Fhijrahpress.com%2F
Image that gives better results is named with large(having large size, dimensions and high quality) and other as small.
Large image:https://ibb.co/S6cK7sj
Small image:https://ibb.co/cFFhvdk
Large image currently used on homepage.
The suggestion are to convert the png image to webp.
It should be sized to fit your page. The image size on your webpage is 600 x 900.
I converted for you. This is much improved.
arabicgrammar.webp 600 x 900px
Is it possible to increase the 40KB jpeg to 40 MB?
If have tried by adding multiple images to paint
It was not working
Please help me to resolve
Then I want to create a pdf which should have more than 25MB
When I save a image from a picturebox using Picturebox1.Image.Save, the saved image size is much larger than the original image size (for example, from 1.5 MB to 15 MB). What can I do for the image will be saved in the same size of the original image?
Thank you in advance.
You probably load a JPEG or PNG image into the Picturebox, which are compressed file formats. However Picturebox1.Image.Save saves it as a bitmap, if you do not specify the type. Bitmaps are uncompressed and therefore quite large. You can change this by using
Picturebox1.Image.Save(Outputfilename, Drawing.Imaging.Imageformats.Png)
This saves the image in the PNG-Format, which is much smaller.
I have tried the following methods,
normal image upload.
encoding and decoding.
these two methods are taking long time to upload the image.
Any suggestion?
There are some simple ways:
Reduce the size of the image. From 1000x1000 to 500x500
Reduce the bpp of the image. For example instead of RGBA representation (32 bits per pixel) use RGB_565 (16bits per pixel) or even gray level image (8bits)
Reduce the quality of the image. Save it as .jpg. This will make the image much smaller. You can play with the quality parameter of jpeg. 100% means very high quality and large files, 1% means extremely tiny images (~40 times smaller) but all the details will be lost.
Save the image in Jpeg200 format. It reduces the size even further. Not every browser supports this format, so you might need to convert it to regular jpeg.
Use pyramids of images. For example. You have 1000x1000 image. Reduce its size by 2 to get 500x500, reduce again and again. Now you got 4 images 1000x1000, 500x500, 250x250, 125x125. You upload the 4 of them. Starting from the smallest to the largest. The smallest image will be uploaded very quick and you will be able to display it (though it is in lower resolution). Next when a better image arrives you update the display and resolution enhances. The effect would be that the basic image is loaded extremely fast and over time the resolution is enhanced. The transfer time of the 4 images will take only 30% more time than the original but the first one will arrive 64 times faster than the original
These are the basic solutions. If they are not what you needed please refine the question
My cocos2d-iphone game has tiled maps. The tilesets textures are rather big. I got around 5 tilesets and each one is 2048x2048 (retina).
My maps are around 80x80. They have around 8 layers and each one is obviously using one tileset.
The frame rate falls (it goes around 30 sometimes. I know 30 is rather aceptable, but still, I want 50+).
So given that textures are huge I can't afford to make many layers (since each one loads a texture of these).
So how about I divide my tileset textures into much smaller tilesets (like 1024x1024 each)? That will allow me to use many more layers for my maps, right?
Are there any other tips for huge retina display tile maps?
Texture with 2048x2048 and 32-Bit colors equals 16 MB (!) of memory. Five times that is 80 MB of memory just for the textures. Ouch! For a tilemap that is relatively tiny (80x80) that's an enormous amount of texture memory.
First order of optimization would be to use PVR textures if you really can't reduce the number of tilesets or images within them. You lose some image quality but the memory consumption will go down dramatically, and the rendering performance of PVR textures is a lot better. Of course while working with Tiled you'll have to use the (presumably) PNG texture which you then convert to PVR for use in the project, for example using TexturePacker.
8 tile layers can be pretty hefty, but depends on how you use them and how many tiles of each layer are actually drawn. Try this: set all but one layer to visible = NO. Then turn the layers back on one by one and see how that affects the framerate.
Finally you should know that Cocos2D's tilemap implementation is utterly inefficient past a certain number of tiles. There have been attempts to improve the tilemap renderer, for example this one (HKTMXTiledMap) may be worth giving a shot.
I had the same problem. My solution is simply convert .png files to .pvr.ccz, and both the file size and in memory footprint reduce dramatically. Here are my steps:
use TexturePacker to convert tileset files (png files) to pvr.ccz. Make sure it's a 1:1 mapping (same size, no rotation, no border padding, no trim...), and they should be the same size (e.g. 2048 x 2048)
open your .tmx file and change the png file path to your pvr.ccz file.
that's it! It works for cocos2d-x in my case. Before the change my game takes 106 MB in memory, and only ~90MB after the change, and this is only for 1 tileset texture.