2016-03-21 28 views
0

Bu ücretsiz yazılımı kullanarak yerel bahçecilik kulüp veritabanım için bazı D5-ent öğelerini güncelleyin.RotateImage'ı Kaydetme

http://www.delphiarea.com/products/delphi-components/rotateimage/

Bu bir LoadFromFile sahiptir yeterince hızlı ve çok iyi çalışır, ancak hiçbir SaveToFile vardır. Sitedeki forumda, Tasarruf hakkında sorulan çok eski sorular var, ama kesin cevaplar yok.

Birisi, döndürüldükten sonra görüntüyü kaydetme hakkında nasıl gideceğimi gösterir misiniz?

Görüntü kaydetme için çevrimiçi olarak bir sürü rutini buldum ve bunların hiçbiri işe yaramıyor. Bir şey kaydeder ama artık bir JPG değildir. Tuvali kurtarmanın bir yolunu aradım ama derlemek için hiçbir şey alamadım. Genellikle hepsi "Bir Bitmap/Canvas, Resim/etc a a TRotateImage atama yapamaz" ile ayrıldılar. Buradaki derinliğimin biraz dışında.

p.s. ImageEx ve Image32'yi denediniz ancak D5 için her iki sürüm de sadece döndürülen dosyayı kaydetmek için çok karmaşıktır.

cevap

4

TRotateImage belgelerine göre, döndürülen görüntüyü bitmap olarak kaydeden RotatedBitmap adlı bir özelliğe sahiptir. Ben çeşitli interpolasyon çekirdekleri kullanarak resimlere daha karmaşık dönüşümler uygulayabilirsiniz Graphics32 kütüphane tavsiye TRotateImage alternatif olarak

uses jpeg; 

procedure SaveRotatedImage; 
var 
    jpg: TJPEGImage; 
begin 
    jpg := TJPEGImage.Create(); 
    try 
    jpg.Assign(YourRotateImage.RotatedBitmap); 
    jpg.SaveToFile('filename.jpg'); 
    finally 
    jpg.Free; 
    end; 
end; 

: Kolayca biriminden jpeg den TJPEGImage sınıfını kullanarak bir JPEG görüntüsüne o bitmap dönüştürebilirsiniz şeffaflık ve çok daha fazlası. Ancak sadece rotasyona ihtiyacınız varsa ve bileşeninizin sonuçlarından memnunsanız, onunla birlikte kalabilirsiniz.

+0

Teşekkürler, bunu daha sonra bugün deneyeceğim. Ben grafik32 yüklü ama büyük öğrenme eğrisi var ve bu eski uygulamaya büyük bir yeniden yazmak zorunda kalmak istemiyorum. – user2175495