Tôi đã viết chương trình ánh xạ ở Delphi, nơi người dùng có thể tải hình ảnh raster dưới nền mà tôi lưu trữ trong bộ nhớ. Trong một trường hợp, người dùng đã tải thành công BMP 44MB nhưng chương trình chậm chạp và khi chúng được in (tôi gạch đầu ra), chúng có lỗi Out Of Resources. Tôi đã chuyển đổi BMP thành PNG (3MB) và chương trình hoạt động tốt hơn nhiều và công việc in đã thành công.Hiệu quả của việc sử dụng PNG so với BMP với các tệp lớn
Vì PNG phải được mở rộng thành một DIB có cùng kích thước, vậy tại sao lại có sự khác biệt hiệu suất/tài nguyên? Nếu bất cứ điều gì nó cần phải làm việc nhiều hơn và phân bổ bộ nhớ để tải PNG. Tôi đang thiếu gì?
Vì dường như không có bất kỳ câu trả lời rõ ràng nào, tôi sẽ viết một dự án demo nhỏ để tôi có thể nghiên cứu thêm về điều này.
Bạn có dương các tập tin BMP và PNG có cùng số điểm ảnh và BitsPerPixel? –
Những gì bạn đang sử dụng để in hình ảnh? Bạn đang viết trực tiếp trên Printer.Canvas hoặc bạn đang sử dụng một thành phần trên một báo cáo như QuickReport hoặc Rave? – rkawano
Francois: Vâng, tôi đã nhận được tệp khách hàng và tự mình thử. rkawano: Tôi in ra các ô DIB mà tôi gửi tới khung máy in. – Mitch