ลดขนาดของไฟล์ PSB
รูปแบบ PSB สามารถบีบอัดได้อย่างง่ายดายหากคุณบันทึกเป็น PSD แต่รูปแบบ PSD ไม่รองรับภาพที่มีความกว้างหรือสูงมากกว่า 30000 พิกเซลในกรณีนี้การบีบอัดไฟล์ PSB เป็นวิธีการแก้ปัญหาที่ซับซ้อนมากขึ้น.คุณสามารถลองใช้ PSB Compress Software แต่เราไม่สามารถรับประกันได้ว่าไฟล์ PSB บีบอัดสุดท้ายจะสามารถอ่านได้app นี้ใช้คุณสมบัติที่ไม่ได้จัดทำเอกสารของรูปแบบ PSB.เพื่อเพิ่มโอกาสในการทำงานที่ถูกต้อง โปรดลองบีบอัดคุณลักษณะที่จะไม่ลบข้อมูลสำคัญลดขนาดของ PSB ให้ “ตามที่เป็นอยู่”.เป็นการดีที่จะใช้ร่วมกัน แอปพลิเคชั่นลดขนาด PSD
Drag and drop a file or select add Image
You can reproduce the main functionality of this built-in app using Aspose.PSD for .NET
// Lossless PSB file reduce operation // Remove Cache Data Stream RemoveCacheData(PsdImage image) { foreach (var layer in image.Layers) { // Can be applied if (layer is TextLayer || layer is FillLayer) { layer.SaveArgb32Pixels(layer.Bounds, new int[layer.Bounds.Width * layer.Bounds.Height]); } } var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image)); return stream; } // Applying RLE Compression to reduce size of PSD Stream ApplyRleCompression(PsdImage image) { foreach (var layer in image.Layers) { foreach (var channelInformation in layer.ChannelInformation) { // Can be applied if (channelInformation.CompressionMethod == CompressionMethod.Raw) { var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image) { CompressionMethod = CompressionMethod.RLE }); return stream; } } } // Can not be applied return null; } // Lossy methods of PSD Size Reducing // 8 Bit Conversion Stream ApplyConversionTo8Bit(PsdImage image) { if (image.BitsPerChannel > 8) { var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image) { ChannelBitsCount = 8 }); stream.Position = 0; return stream; } return null; } // RGBA Conversion Stream ApplyConversionToRGBA(PsdImage image) { if (image.ColorMode == ColorModes.Cmyk) { var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image) { ColorMode = ColorModes.Rgb }); stream.Position = 0; return stream; } return null; } // Layers merging Stream ApplyMergingLayers(PsdImage image) { if (image.Layers.Length > 1) { image.FlattenImage(); var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image)); stream.Position = 0; return stream; } return null; } // Remove Not Visible Layers Stream RemoveNotVisibleLayers(PsdImage image) { var layersSet = new List<Layer>(); foreach (var layer in image.Layers) { // Can be applied if ((!layer.IsVisible || !layer.IsVisibleInGroup) && !(layer is LayerGroup)) { layersSet.Add(layer); } } image.Layers = layersSet.ToArray(); var stream = new MemoryStream(); image.Save(stream, new PsdOptions(image)); return stream; }
You can download Aspose.PSD for .NET from Nuget package manager
You can reproduce the main functionality of this built-in app using Aspose.PSD for Java
public class PsbCompressionUtils { public static OutputStream removeCacheData(PsdImage image) { for (Layer layer : image.getLayers()) { if (layer instanceof TextLayer || layer instanceof FillLayer) { layer.saveArgb32Pixels(layer.getBounds(), new int[layer.getBounds().getWidth() * layer.getBounds().getHeight()]); } } ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image)); return stream; } public static OutputStream applyRleCompression(PsdImage image) { for (Layer layer : image.getLayers()) { for (var channelInformation : layer.getChannelInformation()) { if (channelInformation.getCompressionMethod() == CompressionMethod.Raw) { ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image) {{ setCompressionMethod(CompressionMethod.RLE); }}); return stream; } } } return null; } public static OutputStream applyConversionTo8Bit(PsdImage image) { if (image.getBitsPerChannel() > 8) { ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image) {{ setChannelBitsCount(8); }}); stream.Position = 0; return stream; } return null; } public static OutputStream applyConversionToRGBA(PsdImage image) { if (image.getColorMode() == ColorModes.Cmyk) { ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image) {{ setColorMode(ColorModes.Rgb); }}); stream.Position = 0; return stream; } return null; } public static OutputStream applyMergingLayers(PsdImage image) { if (image.getLayers().length > 1) { image.flattenImage(); ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image)); stream.Position = 0; return stream; } return null; } public static OutputStream removeNotVisibleLayers(PsdImage image) { List layersSet = new ArrayList<>(); for (Layer layer : image.getLayers()) { if ((!layer.isVisible() || !layer.isVisibleInGroup()) && !(layer instanceof LayerGroup)) { layersSet.add(layer); } } image.setLayers(layersSet.toArray(new Layer[0])); ByteArrayOutputStream stream = new ByteArrayOutputStream(); image.save(stream, new PsdOptions(image)); return stream; } }
You can download Aspose.PSD for Java from Aspose Repository
Check the following list of documentation links:
Please check the offical documentation https://docs.aspose.com/psd/
This App is completely free, but it just a small piece of functionality that offers for you Aspose.PSD library. You can make your own app with any functionality of Aspose.PSD. If you can not find needed feature in Aspose.PSD, you can post on PSD Support Forum. The great support, different priceing plans, prioritized bug fixes and feature releasing for the Paid Support Customers.
List of Aspose.PSD versions for different configurations | |
Aspose.PSD for .NET | Aspose.PSD for Java |
Aspose.PSD for .NET has the version for the most popular .NET versions including: .NET Framework 2, 3.5, 4.0, 4.0CP, .netstandard 2, .NET 5, 6, 7. Version of .NET Library for .NET 7 is suitable for the mobile development | Aspose.PSD for Java made on the Java 1.6, so it can be used in the any popular Java configurations. It's suitable for Cross-platform developement |
Official Aspose.PSD for .NET page | Official Aspose.PSD for Java page |
Aspose.PSD for .NET Pricing plans | Aspose.PSD for Java Pricing plans |
Please check the support forum. Where you can feel the real customer care |
ไฟล์ PSB สามารถมีได้ถึง 2gb, เพื่อให้คุณสามารถได้รับกรณีเมื่อ app นี้ไม่สามารถอัปโหลดไฟล์ PSB เพื่อลดขนาดของมัน.ในกรณีนี้จะดีกว่าที่จะใช้ ในสถานที่ตั้งวิธีการแก้ปัญหารูปแบบ PSD เป็น Aspose.PSD และเขียนโค้ดบีบอัดด้วยตัวเองตัวอย่างโค้ดที่ร้อนเพื่อบีบอัดรูปแบบ PSB สามารถพบได้ในบทความนี้เพียงแค่สลับแท็บใน PSB File Reduce App ในตัว