Hi tôi có hai Writablebitmap, một từ jpg và khác từ png và sử dụng phương pháp này để trộn màu sắc trong một vòng lặp:Png trên jpeg (hiệu ứng nước) chất lượng kém?
private static Color Mix(Color from, Color to, float percent)
{
float amountFrom = 1.0f - percent;
return Color.FromArgb(
(byte)(from.A * amountFrom + to.A * percent),
(byte)(from.R * amountFrom + to.R * percent),
(byte)(from.G * amountFrom + to.G * percent),
(byte)(from.B * amountFrom + to.B * percent));
}
Vấn đề của tôi là trong kênh alpha, kết quả hiệu ứng mờ của tôi là xấu (chất lượng)!
Đây là png gốc.
Đây là jpg gốc.
Bất kỳ trợ giúp nào?
Bạn có thể cụ thể hơn về " chất lượng kém "của watermark của bạn mà bạn muốn tránh? – ObscureRobot
png của bạn là chống răng cưa, nó sẽ chỉ nhìn tốt trên nền trắng. Recompressing nó để jpeg là cổ bắn. Không có giải pháp đơn giản cho điều này, watermark không thể sử dụng anti-aliasing. –
Tôi nghĩ rằng điều này đã làm với việc có một nguồn jpg. Nén mất dữ liệu trên một jpeg sử dụng các mô hình tâm lý để làm cho các hiện vật nén ít nhìn thấy hơn. Việc phủ một hình ảnh lên trên hình ảnh được nén này sẽ thổi mô hình này ra khỏi cò. Cách tốt nhất để giải quyết vấn đề này là sử dụng nguồn ảnh không nén được cho cả hình mờ và hình ảnh nguồn của bạn. –